#!/usr/bin/perl
sub url_decode($) {
        my $str = shift;
        $str =~ tr/+/ /;
        $str =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/pack('H2', $1)/eg;
        return $str;
}
my %input;

$mth = $ENV{'REQUEST_METHOD'};
if ($mth eq 'GET'){
        $post = $ENV{'QUERY_STRING'};
}
elsif ($mth eq 'POST'){
        read (STDIN, $post, $ENV{'CONTENT_LENGTH'});

}

@postdata = split(/&/, $post);

foreach $data (@postdata){
        ($named,$neta) = split(/=/, $data);
        $neta2 = &url_decode($neta);
        $input{$named} = $neta2;
}

	@kenmei = (
'樺太','北海道','青森県','岩手県','宮城県','秋田県','山形県','福島県','茨城県','栃木県',
'群馬県','埼玉県','千葉県','東京都','神奈川県','新潟県','富山県','石川県','福井県','山梨県',
'長野県','岐阜県','静岡県','愛知県','三重県','滋賀県','京都府','大阪府','兵庫県','奈良県',
'和歌山県','鳥取県','島根県','岡山県','広島県','山口県','徳島県','香川県','愛媛県','高知県',
'福岡県','佐賀県','長崎県','熊本県','大分県','宮崎県','鹿児島県','沖縄県','台湾','不明なsoftbank',
'東北地方','関東地方','中部地方','関西地方','四国地方','中国地方','九州地方','西日本','東日本','CATV-infoweb',
'空','糸','62','63','64','dion軍','田舎おでん','catv?','長屋','チベット自治区',
'北陸地方','山陰地方','中国四国','73','74','75','76','スリランカ','広西チワン族自治区','内モンゴル自治区',
'USA','カナダ','82','83','84','85','86','87','伊勢','地底',
'チリ')	;


#############################################################################
#	リモホ -> 都道府県名
#############################################################################
sub area47
{
	my $host1 = $_[0];
#	my ($GB) = @_;

	my @kenmei = ()	;

	@kenmei = (
'樺太','北海道','青森県','岩手県','宮城県','秋田県','山形県','福島県','茨城県','栃木県',
'群馬県','埼玉県','千葉県','東京都','神奈川県','新潟県','富山県','石川県','福井県','山梨県',
'長野県','岐阜県','静岡県','愛知県','三重県','滋賀県','京都府','大阪府','兵庫県','奈良県',
'和歌山県','鳥取県','島根県','岡山県','広島県','山口県','徳島県','香川県','愛媛県','高知県',
'福岡県','佐賀県','長崎県','熊本県','大分県','宮崎県','鹿児島県','沖縄県','台湾','不明なsoftbank',
'東北地方','関東地方','中部地方','関西地方','四国地方','中国地方','九州地方','西日本','東日本','CATV-infoweb',
'空','糸','62','63','64','dion軍','田舎おでん','catv?','長屋','チベット自治区',
'北陸地方','山陰地方','中国四国','73','74','75','76','スリランカ','広西チワン族自治区','内モンゴル自治区',
'USA','カナダ','82','83','84','85','86','87','伊勢','地底',
'チリ')	;

	my $xkenban = &area47s0($host1);
#	print "xkenban=${xkenban},";
	if ($xkenban =~ /\d+/){$kenmei2 = $kenmei[$xkenban];}else{$kenmei2 = $xkenban;}
#	print "\nkenmei=$kenmei2\n";

	print "${xkenban}:$kenmei2<br>";

#	my $kenban = int($xkenban)	;
#	if($kenban >90000)	{return "";}
#	if($kenban < 1)
#	{
#		if($xkenban)	{return $xkenban;}
#		$kenban = 0	;
#	}
#	if($kenban > 90)	{$kenban = 90;}

	return $kenmei2	;
}
sub area47s0
{

	my $remo = $_[0]; #いわゆるリモホ

#return "うはは";

	if($remo =~ /\.go\.jp$/)		{return "伊勢";}
	if($remo =~ /\.tw$/)			{return "台";}
	if($remo =~ /\.cn$/)			{return "中";}
	if($remo =~ /\.kr$/)			{return "韓";}
	if($remo =~ /\.kp$/)			{return "朝";}
	if($remo =~ /\.de$/)			{return "独";}
	if($remo =~ /\.us$/)			{return "米";}
	if($remo =~ /\.fr$/)			{return "仏";}
	if($remo =~ /\.uk$/)			{return "英";}
	if($remo =~ /\.is$/)			{return "アイスランド";}
	if($remo =~ /\.au$/)			{return "豪";}
	if($remo =~ /\.ca$/)			{return "加";}
	if($remo =~ /\.br$/)			{return "ブラジル";}
	if($remo =~ /\d+\.\d+\.\d+\.\d+$/)	{return "アラビア";}

	# SB
	if($remo =~ /jp-.\.ne\.jp/)
	{
		#Jフォン東日本
		if($remo =~ /jp-d\.ne\.jp/){return "北海道";}
		if($remo =~ /jp-h\.ne\.jp/){return "東北・新潟";}
		if($remo =~ /jp-t\.ne\.jp/){return "関東・甲信越";}
		#Jフォン西日本
		if($remo =~ /jp-k\.ne\.jp/){return "関西";}
		if($remo =~ /jp-r\.ne\.jp/){return "北陸";}
		if($remo =~ /jp-s\.ne\.jp/){return "四国";}
		if($remo =~ /jp-n\.ne\.jp/){return "中国";}
		if($remo =~ /jp-q\.ne\.jp/){return "九州・沖縄";}
		#Ｊフォン東海 jp-c.ne.jp
		if($remo =~ /jp-c\.ne\.jp/){return "東海";}
		return 77;
	}
	# AU
	if($remo =~ /\.ezweb\.ne\.jp/)
	{
		if($GB->{IDNOTANE} =~ /^0500101/)	{return "関東";}
		if($GB->{IDNOTANE} =~ /^0500103/)	{return "東海";}
		if($GB->{IDNOTANE} =~ /^0500401/)	{return "関東・甲信越";}
		if($GB->{IDNOTANE} =~ /^0500403/)	{return "東海";}
		if($GB->{IDNOTANE} =~ /^0500405/)	{return "-長野";}
		if($GB->{IDNOTANE} =~ /^050/)	{return "東海・関東";}
		if($GB->{IDNOTANE} =~ /^0700/)	{return "関西・北陸";}
		if($GB->{IDNOTANE} =~ /^0701/)	{return "九州";}
		if($GB->{IDNOTANE} =~ /^07022/)	{return "山陽";}
		if($GB->{IDNOTANE} =~ /^0702/)	{return "中国・四国";}
		if($GB->{IDNOTANE} =~ /^0703/)	{return "新潟・東北";}
		if($GB->{IDNOTANE} =~ /^0704/)	{return "北陸地方";}
		if($GB->{IDNOTANE} =~ /^0705/)	{return "北海道";}
		if($GB->{IDNOTANE} =~ /^0706/)	{return "四国";}
		if($GB->{IDNOTANE} =~ /^0707/)	{return "九州・沖縄";}
		if($GB->{IDNOTANE} =~ /^070/)	{return "au-関東以外";}
		return 78;
	}
	if($remo =~ /proxy(\d+)\.docomo\.ne\.jp/)
	{
		my $ppp = $1			;
		open(DOC,'>>docomo.txt');
		print DOC "${ppp},${remo}\n";
		return 79			;
	}

	if($remo =~ /s(\d+)\.a(\d+)\.ap\.plala\.or\.jp$/)
	{
		my $pll = int($2);
		if($pll eq 48)	{return 68;}
		return $pll;
	}
#	if($remo =~ /ap(\d+)\.ftth\.ucom\.ne\.jp$/)		{return 32;}
	if($remo =~ /\.eonet\.ne\.jp$/)				{return 53;}
	if($remo =~ /\.megaegg\.ne\.jp$/)			{return 55;}
	if($remo =~ /w\d+.eacc.dti.ne.jp$/)			{return 57;}
	if($remo =~ /e\d+.eacc.dti.ne.jp$/)			{return 58;}
	if($remo =~ /\.freed\.dti\.ne\.jp$/)			{return 60;}
	if($remo =~ /\.air-[a-z\d+-]+\.dti\.ne\.jp$/)		{return 60;}

	if($remo =~ /\.sec\.nifty\.com$/)			{return 69;}
	if($remo =~ /\.iij4u\.or\.jp$/)				{return 69;}
	if($remo =~ /\.bbexcite\.jp$/)				{return 69;}
	if($remo =~ /\.doubleroute\.jp$/)			{return 69;}
	if($remo =~ /\.prin\.ne\.jp$/)				{return 69;}
	if($remo =~ /\.ucom\.ne\.jp$/)				{return 69;}
	if($remo =~ /\.valley\.ne\.jp$/)			{return 69;}
	if($remo =~ /\.t-com\.ne\.jp$/)				{return 69;}
	if($remo =~ /\.yournet\.ne\.jp$/)			{return 69;}
	if($remo =~ /\.tiki\.ne\.jp$/)				{return 69;}
	if($remo =~ /\.atfreed\.alpha-net\.ne\.jp$/)		{return 61;}
	if($remo =~ /\.du\.alpha-net\.ne\.jp$/)			{return 61;}
	if($remo =~ /\.point\.ne\.jp$/)				{return 51;}
	if($remo =~ /userreverse\.dion\.ne\.jp$/)		{return 65;}

	# namazuplus用(89 = 地底)
	if($remo =~ /banana3104\.maido3\.com$/)			{return 89;}

	if($remo =~ /(\S+)\.(ppp|ppp\-bb)\.dion\.ne\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47dion($GB,$remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /(\S+)\.asahi-net\.or\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47asahinet($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /(\S+)\.rev\.home\.ne\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47home($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /(\S+)\.2iij\.net$/)
	{
		my $ken = $1	;
		my $kenban = &area472iij($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /\.(\S+)\.ocn\.ne\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47ocn($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /\.([\w-]+)\d\d\.ap\.so-net\.ne\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47sonet($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /-([a-z]+)-\d+\.[a-z\d\-]+\.enjoy\.ne\.jp$/)
	{
		my $ken = $1	;
		if(length($ken) eq 3)
		{
			my $kenban = &area47mesh($remo,$ken);
			if($kenban)	{return $kenban;}
		}
		elsif(length($ken) eq 4)
		{
			my $kenban = &area47sonet($remo,$ken);
			if($kenban)	{return $kenban;}
		}
	}
	if($remo =~ /\.([a-z\d\-]+)\.enjoy\.ne\.jp$/)
	{
		my $ken = $1	;
		if(length($ken) eq 3)
		{
			my $kenban = &area47mesh($remo,$ken);
			if($kenban)	{return $kenban;}
		}
		elsif(length($ken) eq 4)
		{
			my $kenban = &area47sonet($remo,$ken);
			if($kenban)	{return $kenban;}
		}
	}
	if($remo =~ /(\S+)\.ppp\.infoweb\.ne\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47infoweb($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /(\S+)\.odn\.(ad|ne)\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47odn($GB,$remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /\.([a-z\-]+)\.nttpc\.ne\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47nttpc($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /\.([a-z]+)\.sannet\.ne\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47dti($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /\.([a-z]+)\.acca\.dti\.ne\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47dti($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /\.([a-z]+)-ip\.dti\.ne\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47dti($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /\.([a-z]+)\.[a-z]+\.alpha-net\.ne\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47dti($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /([a-z]+)\d+-p\d+\.[a-z]+\.hi-ho\.ne\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47hiho($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /\.(\S+)\.mesh\.ad\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47mesh($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /(\S+)\.ppp\.u-netsurf\.ne\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47unetsurf($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /softbank(\d\d\d\d\d\d)\d+\.bbtec\.net$/)
	{
		my $ken = $1	;
		my $kenban = &area47sb($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /\.zaq\.ne\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47zaq($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /\.([a-zA-Z\d]+)\.vectant\.ne\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47vectant($remo,$ken);
		if($kenban)	{return $kenban;}
	}
	if($remo =~ /\.([\w-]+)\.ac\.jp$/)
	{
		my $ken = $1	;
		my $kenban = &area47ac($remo,$ken);
		if($kenban)	{return $kenban;}
	}
#	#catv
	{
		my $kenban = &area47catv($remo);
		if($kenban)	{return $kenban;}
	}
	return 99999;
}
sub area47dion
{
	my ($GB,$remo,$ken) = @_;

	if($ken =~ /^(KD\d\d\d\d\d\d\d\d\d)\d+/)	{$ken = $1;}
	elsif($ken =~ /^(KHP\d\d\d\d\d\d\d\d\d)\d+/)	{$ken = $1;}
	elsif($ken =~ /^([a-zA-Z]+\d\d\d)\d+/)		{$ken = $1;}

	my $r = int($FOX_KEN_DION{$ken})	;

	if(1 <= $r && $r <= 48)
	{
#if(open(LX,">> HOST29.000")){print LX "(ooo)$remo($ken) = $r\n";close(LX);}
		return $r	;
	}

	return 65;
}
sub area47asahinet
{
	my ($remo,$ken) = @_;

	if($ken =~ /^([a-z]\d\d\d)\d+\.ppp/)	{$ken = $1;}

	my $r = int($FOX_KEN_ASAHI{$ken})	;

	if(1 <= $r && $r <= 48)
	{
#if(open(LX,">> HOST29.000")){print LX "(ooo)$remo($ken) = $r\n";close(LX);}
		return $r	;
	}
#if(open(LX,">> HOST29.000")){print LX "(xxx)$remo($ken) = $r\n";close(LX);}

	return 69;
}
sub area47home
{
	my ($remo,$ken) = @_;

	if($ken =~ /^61-27-/)		{return 1;}	#北海道
	if($ken =~ /^61-25-140-/)	{return 8;}	#茨城
	if($ken =~ /^61-26-231-/)	{return 8;}	#茨城
	if($ken =~ /^59-171-144-/)	{return 10;}	#群馬
	if($ken =~ /^61-24-20-/)	{return 10;}	#群馬
	if($ken =~ /^59-171-106-/)	{return 11;}	#埼玉
	if($ken =~ /^61-21-248-/)	{return 11;}	#埼玉
	if($ken =~ /^61-21-253-/)	{return 11;}	#埼玉
	if($ken =~ /^61-23-223-/)	{return 11;}	#埼玉
	if($ken =~ /^203-165-84-/)	{return 11;}	#埼玉
	if($ken =~ /^203-165-244-/)	{return 11;}	#埼玉
	if($ken =~ /^210-20-165-/)	{return 11;}	#埼玉
	if($ken =~ /^210-20-196-/)	{return 11;}	#埼玉
	if($ken =~ /^61-23-72-/)	{return 12;}	#千葉
	if($ken =~ /^61-23-94-/)	{return 12;}	#千葉
	if($ken =~ /^61-24-24-/)	{return 12;}	#千葉
	if($ken =~ /^203-165-164-/)	{return 12;}	#千葉
	if($ken =~ /^210-194-64-/)	{return 12;}	#千葉
	if($ken =~ /^210-194-66-/)	{return 12;}	#千葉
	if($ken =~ /^59-171-201-/)	{return 13;}	#東京
	if($ken =~ /^60-62-121-/)	{return 13;}	#東京
	if($ken =~ /^61-23-157-/)	{return 13;}	#東京
	if($ken =~ /^61-23-171-/)	{return 13;}	#東京
	if($ken =~ /^61-24-32-/)	{return 13;}	#東京
	if($ken =~ /^61-26-3-/)		{return 13;}	#東京
	if($ken =~ /^61-26-36-/)	{return 13;}	#東京
	if($ken =~ /^61-26-50-/)	{return 13;}	#東京
	if($ken =~ /^61-26-232-/)	{return 13;}	#東京
	if($ken =~ /^124-144-94-/)	{return 13;}	#東京
	if($ken =~ /^125-14-111-/)	{return 13;}	#東京
	if($ken =~ /^125-14-81-/)	{return 13;}	#東京
	if($ken =~ /^125-14-240-/)	{return 13;}	#東京
	if($ken =~ /^203-165-104-/)	{return 13;}	#東京
	if($ken =~ /^203-165-204-/)	{return 13;}	#東京
	if($ken =~ /^203-165-232-/)	{return 13;}	#東京
	if($ken =~ /^210-20-66-/)	{return 13;}	#東京
	if($ken =~ /^210-194-120-/)	{return 13;}	#東京
	if($ken =~ /^210-194-152-/)	{return 13;}	#東京
	if($ken =~ /^203-165-96-/)	{return 13;}	#東京
	if($ken =~ /^61-21-73-/)	{return 14;}	#神奈川
	if($ken =~ /^59-171-234-/)	{return 14;}	#神奈川
	if($ken =~ /^61-24-194-/)	{return 14;}	#神奈川
	if($ken =~ /^61-24-194-/)	{return 14;}	#神奈川
	if($ken =~ /^61-26-205-/)	{return 14;}	#神奈川
	if($ken =~ /^61-26-246-/)	{return 14;}	#神奈川
	if($ken =~ /^61-26-253-/)	{return 14;}	#神奈川
	if($ken =~ /^124-144-103-/)	{return 14;}	#神奈川
	if($ken =~ /^125-14-212-/)	{return 14;}	#神奈川
	if($ken =~ /^124-144-137-/)	{return 14;}	#神奈川
	if($ken =~ /^210-20-154-/)	{return 14;}	#神奈川
	if($ken =~ /^210-194-19-/)	{return 14;}	#神奈川
	if($ken =~ /^210-194-62-/)	{return 14;}	#神奈川
	if($ken =~ /^210-194-184-/)	{return 14;}	#神奈川
	if($ken =~ /^210-194-240-/)	{return 14;}	#神奈川
	if($ken =~ /^60-62-34-/)	{return 15;}	#新潟
	if($ken =~ /^125-15-201-/)	{return 25;}	#滋賀
#	if($ken =~ /^61-27-136-/)	{return 31;}	#鳥取
	if($ken =~ /^60-62-47-/)	{return 31;}	#鳥取
	if($ken =~ /^61-22-30-/)	{return 35;}	#山口
	if($ken =~ /^61-22-45-/)	{return 35;}	#山口
	if($ken =~ /^61-22-39-/)	{return 40;}	#福岡
	if($ken =~ /^61-22-235-/)	{return 40;}	#福岡
	if($ken =~ /^61-26-232-/)	{return 40;}	#福岡

	return 69;
}
sub area47sb
{
	my ($remo,$ken) = @_;

	if($ken eq '126068')	{return 1;}	#北海道
	if($ken eq '218127')	{return 1;}	#北海道
	if($ken eq '219041')	{return 1;}	#北海道
	if($ken eq '219168')	{return 1;}	#北海道
	if($ken eq '219181')	{return 1;}	#北海道
	if($ken eq '221023')	{return 1;}	#北海道
	if($ken eq '221030')	{return 1;}	#北海道
	if($ken eq '221032')	{return 1;}	#北海道
	if($ken eq '221036')	{return 1;}	#北海道
	if($ken eq '221046')	{return 1;}	#北海道
	if($ken eq '221062')	{return 1;}	#北海道
	if($ken eq '221029')	{return 2;}	#青森
	if($ken eq '221054')	{return 2;}	#青森
	if($ken eq '219053')	{return 3;}	#岩手
	if($ken eq '219173')	{return 3;}	#岩手
	if($ken eq '221033')	{return 3;}	#岩手
	if($ken eq '221039')	{return 3;}	#岩手
	if($ken eq '221053')	{return 3;}	#岩手
	if($ken eq '221054')	{return 3;}	#岩手
	if($ken eq '126098')	{return 4;}	#宮城
	if($ken eq '218112')	{return 4;}	#宮城
	if($ken eq '219057')	{return 4;}	#宮城・秋田
	if($ken eq '219171')	{return 4;}	#宮城
	if($ken eq '219208')	{return 4;}	#宮城
	if($ken eq '221020')	{return 4;}	#宮城
	if($ken eq '221026')	{return 4;}	#宮城
	if($ken eq '221105')	{return 4;}	#秋田
	if($ken eq '221058')	{return 5;}	#宮城
	if($ken eq '219051')	{return 7;}	#福島・宮城
	if($ken eq '219057')	{return 7;}	#福島
	if($ken eq '219172')	{return 7;}	#福島
	if($ken eq '221044')	{return 7;}	#福島
	if($ken eq '060100')	{return 8;}	#茨城
	if($ken eq '218137')	{return 8;}	#茨城
	if($ken eq '219006')	{return 8;}	#茨城
	if($ken eq '220005')	{return 8;}	#茨城
	if($ken eq '220006')	{return 8;}	#茨城
	if($ken eq '221040')	{return 8;}	#茨城
	if($ken eq '221043')	{return 8;}	#茨城
	if($ken eq '060091')	{return 9;}	#栃木
	if($ken eq '126096')	{return 9;}	#栃木
	if($ken eq '219055')	{return 9;}	#栃木
	if($ken eq '219056')	{return 9;}	#栃木
	if($ken eq '219192')	{return 9;}	#栃木
	if($ken eq '220004')	{return 9;}	#栃木
	if($ken eq '221027')	{return 9;}	#栃木
	if($ken eq '221031')	{return 9;}	#栃木
	if($ken eq '220003')	{return 11;}	#群馬
	if($ken eq '220007')	{return 11;}	#群馬
	if($ken eq '060086')	{return 11;}	#埼玉
	if($ken eq '218128')	{return 11;}	#埼玉
	if($ken eq '218118')	{return 11;}	#埼玉
	if($ken eq '218119')	{return 11;}	#埼玉
	if($ken eq '218177')	{return 11;}	#埼玉
	if($ken eq '219012')	{return 11;}	#埼玉
	if($ken eq '219013')	{return 11;}	#埼玉
	if($ken eq '219014')	{return 11;}	#埼玉
	if($ken eq '219058')	{return 11;}	#埼玉・群馬
	if($ken eq '219181')	{return 11;}	#埼玉
	if($ken eq '219182')	{return 11;}	#埼玉
	if($ken eq '219183')	{return 11;}	#埼玉
	if($ken eq '219193')	{return 11;}	#埼玉
	if($ken eq '219194')	{return 11;}	#埼玉
	if($ken eq '219199')	{return 11;}	#埼玉
	if($ken eq '219201')	{return 11;}	#埼玉
	if($ken eq '219214')	{return 11;}	#埼玉
	if($ken eq '219200')	{return 11;}	#埼玉
	if($ken eq '221018')	{return 11;}	#埼玉
	if($ken eq '220001')	{return 11;}	#埼玉
	if($ken eq '060088')	{return 12;}	#千葉
	if($ken eq '060089')	{return 12;}	#千葉
	if($ken eq '060101')	{return 12;}	#千葉
	if($ken eq '126064')	{return 12;}	#千葉
	if($ken eq '126112')	{return 12;}	#千葉
	if($ken eq '218135')	{return 12;}	#千葉
	if($ken eq '218178')	{return 12;}	#千葉
	if($ken eq '218180')	{return 12;}	#千葉
	if($ken eq '219010')	{return 12;}	#千葉
	if($ken eq '219011')	{return 12;}	#千葉
	if($ken eq '219016')	{return 12;}	#千葉
	if($ken eq '219174')	{return 12;}	#千葉
	if($ken eq '219176')	{return 12;}	#千葉
	if($ken eq '219189')	{return 12;}	#千葉
	if($ken eq '219190')	{return 12;}	#千葉
	if($ken eq '219191')	{return 12;}	#千葉
	if($ken eq '221022')	{return 12;}	#千葉
	if($ken eq '221025')	{return 12;}	#千葉
	if($ken eq '221038')	{return 12;}	#千葉
	if($ken eq '221056')	{return 12;}	#千葉
	if($ken eq '060076')	{return 13;}	#東京
	if($ken eq '060081')	{return 13;}	#東京
	if($ken eq '060085')	{return 13;}	#東京
	if($ken eq '126065')	{return 13;}	#東京
	if($ken eq '126080')	{return 13;}	#東京
	if($ken eq '218130')	{return 13;}	#東京
	if($ken eq '218132')	{return 13;}	#東京
	if($ken eq '218133')	{return 13;}	#東京
	if($ken eq '218134')	{return 13;}	#東京
	if($ken eq '218138')	{return 13;}	#東京
	if($ken eq '218176')	{return 13;}	#東京
	if($ken eq '219000')	{return 13;}	#東京
	if($ken eq '219001')	{return 13;}	#東京
	if($ken eq '219002')	{return 13;}	#東京
	if($ken eq '219003')	{return 13;}	#東京
	if($ken eq '219004')	{return 13;}	#東京
	if($ken eq '219005')	{return 13;}	#東京
	if($ken eq '219007')	{return 13;}	#東京
	if($ken eq '219008')	{return 13;}	#東京
	if($ken eq '219009')	{return 13;}	#東京
	if($ken eq '219011')	{return 13;}	#東京
	if($ken eq '219015')	{return 13;}	#東京
	if($ken eq '219018')	{return 13;}	#東京
	if($ken eq '219017')	{return 13;}	#東京
	if($ken eq '219019')	{return 13;}	#東京
	if($ken eq '219036')	{return 13;}	#東京
	if($ken eq '219037')	{return 13;}	#東京
	if($ken eq '219169')	{return 13;}	#東京
	if($ken eq '219176')	{return 13;}	#東京
	if($ken eq '219184')	{return 13;}	#東京
	if($ken eq '219185')	{return 13;}	#東京
	if($ken eq '219186')	{return 13;}	#東京
	if($ken eq '219187')	{return 13;}	#東京
	if($ken eq '219188')	{return 13;}	#東京
	if($ken eq '219195')	{return 13;}	#東京
	if($ken eq '219196')	{return 13;}	#東京
	if($ken eq '219197')	{return 13;}	#東京
	if($ken eq '219198')	{return 13;}	#東京
	if($ken eq '219215')	{return 13;}	#東京
	if($ken eq '219218')	{return 13;}	#東京
	if($ken eq '221016')	{return 13;}	#東京
	if($ken eq '221021')	{return 13;}	#東京
	if($ken eq '221028')	{return 13;}	#東京
	if($ken eq '221034')	{return 13;}	#東京
	if($ken eq '221041')	{return 13;}	#東京
	if($ken eq '221106')	{return 13;}	#東京
	if($ken eq '221108')	{return 13;}	#東京
	if($ken eq '060082')	{return 14;}	#神奈川
	if($ken eq '060083')	{return 14;}	#神奈川
	if($ken eq '126067')	{return 14;}	#神奈川
	if($ken eq '219204')	{return 14;}	#神奈川
	if($ken eq '218139')	{return 14;}	#神奈川
	if($ken eq '218140')	{return 14;}	#神奈川
	if($ken eq '218141')	{return 14;}	#神奈川
	if($ken eq '218144')	{return 14;}	#神奈川
	if($ken eq '219035')	{return 14;}	#神奈川
	if($ken eq '219038')	{return 14;}	#神奈川
	if($ken eq '219039')	{return 14;}	#神奈川
	if($ken eq '219042')	{return 14;}	#神奈川
	if($ken eq '219043')	{return 14;}	#神奈川
	if($ken eq '219044')	{return 14;}	#神奈川
	if($ken eq '219045')	{return 14;}	#神奈川
	if($ken eq '219046')	{return 14;}	#神奈川
	if($ken eq '219052')	{return 14;}	#神奈川
	if($ken eq '219175')	{return 14;}	#神奈川
	if($ken eq '219177')	{return 14;}	#神奈川
	if($ken eq '219178')	{return 14;}	#神奈川
	if($ken eq '219179')	{return 14;}	#神奈川
	if($ken eq '219180')	{return 14;}	#神奈川
	if($ken eq '219202')	{return 14;}	#神奈川
	if($ken eq '219205')	{return 14;}	#神奈川
	if($ken eq '219206')	{return 13;}	#神奈川・東京
	if($ken eq '219207')	{return 14;}	#神奈川
	if($ken eq '221017')	{return 14;}	#神奈川
	if($ken eq '221019')	{return 14;}	#神奈川
	if($ken eq '221037')	{return 14;}	#神奈川
	if($ken eq '219040')	{return 15;}	#新潟
	if($ken eq '219058')	{return 15;}	#新潟
	if($ken eq '220008')	{return 15;}	#新潟
	if($ken eq '221052')	{return 15;}	#新潟
	if($ken eq '221060')	{return 15;}	#新潟
	if($ken eq '220021')	{return 16;}	#富山
	if($ken eq '220052')	{return 16;}	#富山
	if($ken eq '219213')	{return 17;}	#石川
	if($ken eq '221071')	{return 17;}	#石川
	if($ken eq '221081')	{return 17;}	#石川
	if($ken eq '221093')	{return 17;}	#石川
	if($ken eq '221095')	{return 17;}	#石川
	if($ken eq '219061')	{return 18;}	#福井
	if($ken eq '220024')	{return 18;}	#福井
	if($ken eq '220010')	{return 19;}	#山梨・静岡
	if($ken eq '220009')	{return 20;}	#長野
	if($ken eq '126069')	{return 22;}	#静岡
	if($ken eq '218131')	{return 22;}	#静岡
	if($ken eq '218143')	{return 22;}	#静岡
	if($ken eq '219047')	{return 22;}	#静岡
	if($ken eq '219048')	{return 22;}	#静岡
	if($ken eq '220023')	{return 22;}	#静岡・岐阜
	if($ken eq '220000')	{return 22;}	#静岡
	if($ken eq '220002')	{return 22;}	#静岡
	if($ken eq '221024')	{return 22;}	#静岡・三重
	if($ken eq '060096')	{return 23;}	#岐阜
	if($ken eq '220031')	{return 23;}	#岐阜
	if($ken eq '221035')	{return 23;}	#岐阜
	if($ken eq '221045')	{return 23;}	#岐阜
	if($ken eq '218122')	{return 23;}	#愛知
	if($ken eq '218142')	{return 23;}	#愛知
	if($ken eq '218179')	{return 23;}	#愛知
	if($ken eq '219032')	{return 23;}	#愛知
	if($ken eq '219033')	{return 23;}	#愛知
	if($ken eq '219049')	{return 23;}	#愛知
	if($ken eq '219050')	{return 23;}	#愛知・三重
	if($ken eq '219170')	{return 23;}	#愛知
	if($ken eq '219203')	{return 23;}	#愛知
	if($ken eq '219209')	{return 23;}	#愛知
	if($ken eq '219210')	{return 23;}	#愛知
	if($ken eq '220028')	{return 23;}	#愛知
	if($ken eq '220029')	{return 23;}	#愛知
	if($ken eq '220002')	{return 23;}	#愛知
	if($ken eq '220030')	{return 23;}	#愛知
	if($ken eq '221057')	{return 23;}	#愛知
	if($ken eq '221059')	{return 23;}	#愛知
	if($ken eq '221107')	{return 23;}	#愛知
	if($ken eq '219054')	{return 24;}	#三重
	if($ken eq '220026')	{return 24;}	#三重
	if($ken eq '220027')	{return 24;}	#三重・愛知
	if($ken eq '218129')	{return 25;}	#滋賀
	if($ken eq '220051')	{return 25;}	#滋賀
	if($ken eq '221075')	{return 25;}	#滋賀
	if($ken eq '218121')	{return 26;}	#京都
	if($ken eq '218123')	{return 26;}	#京都
	if($ken eq '219025')	{return 26;}	#京都
	if($ken eq '219029')	{return 26;}	#京都
	if($ken eq '219030')	{return 26;}	#京都・滋賀
	if($ken eq '219092')	{return 26;}	#京都
	if($ken eq '220041')	{return 26;}	#京都
	if($ken eq '220037')	{return 26;}	#京都
	if($ken eq '220046')	{return 26;}	#京都
	if($ken eq '220047')	{return 26;}	#京都
	if($ken eq '221055')	{return 26;}	#京都
	if($ken eq '2210920')	{return 26;}	#京都
	if($ken eq '060105')	{return 27;}	#大阪
	if($ken eq '218121')	{return 27;}	#大阪
	if($ken eq '218126')	{return 27;}	#大阪
	if($ken eq '218129')	{return 27;}	#大阪
	if($ken eq '218136')	{return 27;}	#大阪
	if($ken eq '218181')	{return 27;}	#大阪
	if($ken eq '218182')	{return 27;}	#大阪
	if($ken eq '219020')	{return 27;}	#大阪
	if($ken eq '219021')	{return 27;}	#大阪
	if($ken eq '219023')	{return 27;}	#大阪
	if($ken eq '219024')	{return 27;}	#大阪
	if($ken eq '219062')	{return 27;}	#大阪
	if($ken eq '220011')	{return 27;}	#大阪
	if($ken eq '220012')	{return 27;}	#大阪
	if($ken eq '220013')	{return 27;}	#大阪
	if($ken eq '220018')	{return 27;}	#大阪
	if($ken eq '220032')	{return 27;}	#大阪
	if($ken eq '220033')	{return 27;}	#大阪
	if($ken eq '220034')	{return 27;}	#大阪
	if($ken eq '220035')	{return 27;}	#大阪
	if($ken eq '220036')	{return 27;}	#大阪
	if($ken eq '220038')	{return 27;}	#大阪
	if($ken eq '220042')	{return 27;}	#大阪
	if($ken eq '060110')	{return 28;}	#兵庫
	if($ken eq '218124')	{return 28;}	#兵庫
	if($ken eq '218125')	{return 28;}	#兵庫
	if($ken eq '218154')	{return 28;}	#兵庫
	if($ken eq '219022')	{return 28;}	#兵庫
	if($ken eq '219026')	{return 28;}	#兵庫
	if($ken eq '219027')	{return 28;}	#兵庫
	if($ken eq '220014')	{return 28;}	#兵庫
	if($ken eq '220015')	{return 28;}	#兵庫
	if($ken eq '220016')	{return 28;}	#兵庫
	if($ken eq '220017')	{return 28;}	#兵庫
	if($ken eq '220039')	{return 28;}	#兵庫
	if($ken eq '220040')	{return 28;}	#兵庫
	if($ken eq '220044')	{return 28;}	#兵庫
	if($ken eq '221064')	{return 28;}	#兵庫
	if($ken eq '221092')	{return 28;}	#兵庫
	if($ken eq '218183')	{return 29;}	#奈良・京都
	if($ken eq '126070')	{return 29;}	#奈良
	if($ken eq '220043')	{return 29;}	#奈良
	if($ken eq '221072')	{return 29;}	#奈良
	if($ken eq '220050')	{return 30;}	#和歌山
	if($ken eq '060120')	{return 31;}	#鳥取
	if($ken eq '221079')	{return 32;}	#島根
	if($ken eq '060118')	{return 33;}	#岡山
	if($ken eq '126087')	{return 33;}	#岡山
	if($ken eq '218115')	{return 33;}	#岡山
	if($ken eq '219063')	{return 33;}	#岡山
	if($ken eq '220056')	{return 33;}	#岡山
	if($ken eq '221084')	{return 33;}	#岡山・広島
	if($ken eq '221094')	{return 33;}	#岡山・広島
	if($ken eq '221097')	{return 33;}	#岡山
	if($ken eq '221100')	{return 33;}	#岡山
	if($ken eq '060116')	{return 34;}	#広島
	if($ken eq '218120')	{return 34;}	#広島
	if($ken eq '219060')	{return 34;}	#広島・鳥取
	if($ken eq '220019')	{return 34;}	#広島
	if($ken eq '220020')	{return 34;}	#広島
	if($ken eq '220025')	{return 34;}	#広島
	if($ken eq '220053')	{return 34;}	#広島
	if($ken eq '219034')	{return 35;}	#山口
	if($ken eq '221063')	{return 35;}	#山口
	if($ken eq '221085')	{return 35;}	#山口
	if($ken eq '221086')	{return 36;}	#徳島
	if($ken eq '219028')	{return 37;}	#香川
	if($ken eq '219211')	{return 37;}	#香川
	if($ken eq '220045')	{return 37;}	#香川
	if($ken eq '221080')	{return 37;}	#香川
	if($ken eq '221096')	{return 37;}	#香川
	if($ken eq '221076')	{return 38;}	#愛媛
	if($ken eq '220048')	{return 38;}	#愛媛
	if($ken eq '221089')	{return 39;}	#高知
	if($ken eq '126071')	{return 40;}	#福岡
	if($ken eq '126071')	{return 40;}	#福岡
	if($ken eq '060122')	{return 40;}	#福岡
	if($ken eq '218114')	{return 40;}	#福岡
	if($ken eq '218116')	{return 40;}	#福岡
	if($ken eq '218117')	{return 40;}	#福岡
	if($ken eq '219212')	{return 40;}	#福岡
	if($ken eq '220054')	{return 40;}	#福岡
	if($ken eq '220058')	{return 40;}	#福岡
	if($ken eq '220059')	{return 40;}	#福岡
	if($ken eq '220060')	{return 40;}	#福岡
	if($ken eq '220061')	{return 40;}	#福岡
	if($ken eq '221098')	{return 40;}	#福岡
	if($ken eq '221078')	{return 40;}	#福岡
	if($ken eq '221098')	{return 40;}	#福岡
	if($ken eq '221101')	{return 40;}	#福岡
	if($ken eq '220020')	{return 41;}	#佐賀・福岡
	if($ken eq '221067')	{return 41;}	#佐賀
	if($ken eq '220055')	{return 42;}	#長崎
	if($ken eq '221083')	{return 43;}	#熊本
	if($ken eq '221088')	{return 43;}	#熊本
	if($ken eq '220022')	{return 43;}	#熊本
	if($ken eq '060125')	{return 44;}	#大分
	if($ken eq '218113')	{return 44;}	#大分
	if($ken eq '220062')	{return 44;}	#大分
	if($ken eq '221077')	{return 45;}	#宮崎
	if($ken eq '220063')	{return 46;}	#鹿児島
	if($ken eq '221065')	{return 46;}	#鹿児島
	if($ken eq '221074')	{return 46;}	#鹿児島
	if($ken eq '221082')	{return 46;}	#鹿児島
	if($ken eq '221087')	{return 46;}	#鹿児島
	if($ken eq '221091')	{return 46;}	#鹿児島
	if($ken eq '219031')	{return 47;}	#沖縄
	if($ken eq '220057')	{return 47;}	#沖縄
	if($ken eq '220049')	{return 42;}	#中国四国(高知)

	return 49;
}
sub area47hiho
{
	my ($remo,$ken) = @_;

	if($ken eq 'west')	{return 57;}
	if($ken eq 'east')	{return 58;}
	if($ken eq 'nrm')	{return 51;}
	if($ken eq 'tky')	{return 13;}
	if($ken eq 'osk')	{return 27;}
	if($ken eq 'stm')	{return 11;}
	if($ken eq 'kwg')	{return 11;}
	if($ken eq 'kng')	{return 14;}
	if($ken eq 'ykh')	{return 14;}
	if($ken eq 'shg')	{return 25;}
	if($ken eq 'oky')	{return 33;}
	if($ken eq 'fks')	{return 7;}
	if($ken eq 'aic')	{return 23;}
	if($ken eq 'kgw')	{return 37;}
	if($ken eq 'hkd')	{return 1;}
	if($ken eq 'chb')	{return 12;}
	if($ken eq 'myg')	{return 4;}
	if($ken eq 'kyt')	{return 26;}
	if($ken eq 'gmm')	{return 10;}
	if($ken eq 'amr')	{return 2;}
	if($ken eq 'fkk')	{return 40;}
	if($ken eq 'mie')	{return 24;}
	if($ken eq 'hrs')	{return 34;}
	if($ken eq 'tcg')	{return 9;}
	if($ken eq 'ngs')	{return 42;}
	if($ken eq 'hyg')	{return 28;}
	if($ken eq 'akt')	{return 5;}
	if($ken eq 'szk')	{return 22;}
	if($ken eq 'ngt')	{return 15;}
	if($ken eq 'smn')	{return 32;}
	if($ken eq 'ymn')	{return 19;}
	if($ken eq 'okn')	{return 47;}
	if($ken eq 'fki')	{return 18;}
	if($ken eq 'ibr')	{return 8;}
	if($ken eq 'kch')	{return 39;}
	if($ken eq 'gif')	{return 21;}
	if($ken eq 'tks')	{return 36;}
	if($ken eq 'wky')	{return 30;}
	if($ken eq 'nar')	{return 29;}
	if($ken eq 'iwt')	{return 3;}
	if($ken eq 'ngn')	{return 20;}
	if($ken eq 'isk')	{return 17;}
	if($ken eq 'myz')	{return 45;}
	if($ken eq 'ymt')	{return 6;}
	if($ken eq 'saga')	{return 41;}
	if($ken eq 'yamaguchi')	{return 35;}
	if($ken eq 'oita')	{return 44;}
	if($ken eq 'toyama')	{return 16;}
	if($ken eq 'shiga')	{return 25;}
	if($ken eq 'kagoshima')	{return 46;}
	if($ken eq 'ehime')	{return 38;}
	if($ken eq 'kumamoto')	{return 43;}
	if($ken eq 'tottori')	{return 31;}
#nrm1-p59.tepco.hi-ho.ne.jp(nrm)
	if($ken eq 'snj')	{return 13;}	#
	if($ken eq 'snt')	{return 13;}	#
	if($ken eq 'wdb')	{return 13;}	#
	if($ken eq 'hoj')	{return 13;}	#
	if($ken eq 'edg')	{return 60;}	#

#	if(open(LX,">> HOST29.000")){print LX "(hiho)$remo($ken)\n";close(LX);}
	return 0			;
}
sub area47infoweb
{
	my ($remo,$ken) = @_;


	if($remo =~ /oyma(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/)	{return 9;}	#栃木県(09)
	if($remo =~ /fnbs(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/)	{return 12;}	#千葉県(12)
	if($remo =~ /nkno(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/)	{return 13;}	#東京都(13)
	if($remo =~ /ohta(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/)	{return 13;}	#
	if($remo =~ /ktsk(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/)	{return 13;}	#
	if($remo =~ /hcou(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/)	{return 13;}	#
	if($remo =~ /tkbn(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/)	{return 13;}	#
	if($remo =~ /odwr(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/)	{return 14;}	#神奈川県(14)
	if($remo =~ /youx(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/)	{return 21;}	#岐阜県(21)
	if($remo =~ /ymgt(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/)	{return 21;}	#岐阜県(21)
	if($remo =~ /hmmt(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/)	{return 22;}	#静岡県(22)
	if($remo =~ /aksi(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/)	{return 28;}	#兵庫県(28)
	if($remo =~ /kkgw(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/)	{return 28;}	#
	if($remo =~ /kihn(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/)	{return 28;}	#

	if($ken =~ /\.dup$/)	{return 61;}
	if($ken =~ /\.do$/)	{return 60;}
#	if($ken =~ /catv/)	{return 59;}

	if($ken =~ /\.(\w+)\.nt\./)	{$ken = $1;}
	elsif($ken =~ /\.(\w+)\.te\./)	{$ken = $1;}
	elsif($ken =~ /ea([a-z]+)\d+\.adsl$/)	{$ken = $1;}
	elsif($ken =~ /ac([a-z]+)\d+\.adsl$/)	{$ken = $1;}
	elsif($ken =~ /tc([a-z]+)\d+\.adsl$/)	{$ken = $1;}
	elsif($ken =~ /ct([a-z]+)\d+\.adsl$/)	{$ken = $1;}
	elsif($ken =~ /th([a-z]+)\d+\.adsl$/)	{$ken = $1;}
	elsif($ken =~ /st([a-z]+)\d+\.adsl$/)	{$ken = $1;}
	elsif($ken =~ /\.([a-z]+)\.fnt\.ftth$/)	{$ken = $1;}
	elsif($ken =~ /[a-z][a-z]([a-z]+)\d+\.adsl$/)	{$ken = $1;}

	if($ken =~ /air/i)	{return 60;}

	if($ken eq 'tkyo')	{return 13;}
	if($ken eq 'tckw')	{return 13;}
	if($ken eq 'atgi')	{return 13;}
	if($ken eq 'oska')	{return 27;}
	if($ken eq 'sitm')	{return 11;}
	if($ken eq 'urwa')	{return 11;}
	if($ken eq 'kngw')	{return 14;}
	if($ken eq 'ykhm')	{return 14;}
	if($ken eq 'siga')	{return 25;}
	if($ken eq 'okym')	{return 33;}
	if($ken eq 'fksm')	{return 7;}
	if($ken eq 'aich')	{return 23;}
	if($ken eq 'ngya')	{return 23;}
	if($ken eq 'kgwa')	{return 37;}
	if($ken eq 'tkmt')	{return 37;}
	if($ken eq 'ymgc')	{return 35;}
	if($ken eq 'hkid')	{return 1;}
	if($ken eq 'spro')	{return 1;}
	if($ken eq 'chba')	{return 12;}
	if($ken eq 'mygi')	{return 4;}
	if($ken eq 'sndi')	{return 4;}
	if($ken eq 'kyto')	{return 26;}
	if($ken eq 'gnma')	{return 10;}
	if($ken eq 'aomr')	{return 2;}
	if($ken eq 'fkok')	{return 40;}
	if($ken eq 'ooit')	{return 44;}
	if($ken eq 'miex')	{return 24;}
	if($ken eq 'hrsm')	{return 34;}
	if($ken eq 'tcgi')	{return 9;}
	if($ken eq 'ngsk')	{return 42;}
	if($ken eq 'hygo')	{return 28;}
	if($ken eq 'kube')	{return 28;}
	if($ken eq 'akta')	{return 5;}
	if($ken eq 'szok')	{return 22;}
	if($ken eq 'yizu')	{return 22;}
	if($ken eq 'nigt')	{return 15;}
	if($ken eq 'oknw')	{return 47;}
	if($ken eq 'fkui')	{return 18;}
	if($ken eq 'ibrk')	{return 8;}
	if($ken eq 'tyma')	{return 16;}
	if($ken eq 'kuch')	{return 39;}
	if($ken eq 'gifu')	{return 21;}
	if($ken eq 'tksm')	{return 36;}
	if($ken eq 'shga')	{return 25;}
	if($ken eq 'kgsm')	{return 46;}
	if($ken eq 'nara')	{return 29;}
	if($ken eq 'iwte')	{return 3;}
	if($ken eq 'ngno')	{return 20;}
	if($ken eq 'iskw')	{return 17;}
	if($ken eq 'knzw')	{return 17;}
	if($ken eq 'saga')	{return 41;}
	if($ken eq 'ehme')	{return 38;}
	if($ken eq 'kmmt')	{return 43;}
	if($ken eq 'ttri')	{return 31;}
	if($ken eq 'smne')	{return 32;}
	if($ken eq 'ymns')	{return 19;}
	if($ken eq 'wkym')	{return 30;}
	if($ken eq 'ymgt')	{return 6;}
	if($ken eq 'myzk')	{return 45;}

#	if(open(LX,">> HOST29.000")){print LX "$remo($ken)\n";close(LX);}
	return 0			;
}
sub area47mesh
{
	my ($remo,$ken) = @_;

	if($ken eq 'tky')	{return 13;}
	if($ken eq 'osk')	{return 27;}
	if($ken eq 'stm')	{return 11;}
	if($ken eq 'kng')	{return 14;}
	if($ken eq 'sig')	{return 25;}
	if($ken eq 'oky')	{return 33;}
	if($ken eq 'fks')	{return 7;}
	if($ken eq 'aic')	{return 23;}
	if($ken eq 'kgw')	{return 37;}
	if($ken eq 'ygc')	{return 35;}
	if($ken eq 'hkd')	{return 1;}
	if($ken eq 'chb')	{return 12;}
	if($ken eq 'myg')	{return 4;}
	if($ken eq 'kyt')	{return 26;}
	if($ken eq 'gnm')	{return 10;}
	if($ken eq 'aom')	{return 2;}
	if($ken eq 'fko')	{return 40;}
	if($ken eq 'oit')	{return 44;}
	if($ken eq 'mie')	{return 24;}
	if($ken eq 'hrs')	{return 34;}
	if($ken eq 'tcg')	{return 9;}
	if($ken eq 'ngs')	{return 42;}
	if($ken eq 'hyg')	{return 28;}
	if($ken eq 'szo')	{return 22;}
	if($ken eq 'nig')	{return 15;}
	if($ken eq 'ymn')	{return 19;}
	if($ken eq 'okn')	{return 47;}
	if($ken eq 'iba')	{return 8;}
	if($ken eq 'koc')	{return 39;}
	if($ken eq 'gif')	{return 21;}
	if($ken eq 'fki')	{return 18;}
	if($ken eq 'tks')	{return 36;}
	if($ken eq 'kgs')	{return 46;}
	if($ken eq 'wky')	{return 30;}
	if($ken eq 'nra')	{return 29;}
	if($ken eq 'iwa')	{return 3;}
	if($ken eq 'ngn')	{return 20;}
	if($ken eq 'isk')	{return 17;}
	if($ken eq 'sag')	{return 41;}
	if($ken eq 'ygt')	{return 6;}
	if($ken eq 'kmm')	{return 43;}
	if($ken eq 'myz')	{return 45;}
	if($ken eq 'tym')	{return 16;}
	if($ken eq 'ttr')	{return 31;}
	if($ken eq 'aki')	{return 5;}
	if($ken eq 'smn')	{return 32;}
	if($ken eq 'shiga')	{return 25;}
	if($ken eq 'ehm')	{return 38;}

#	if(open(LX,">> HOST29.000")){print LX "(mesh)$remo($ken)\n";close(LX);}
	return 0			;
}
sub area47zaq
{
	my ($remo,$ken) = @_;

	#京都府
	if($remo =~ /zaq3d2e6[89a-f]..\.zaq.ne.jp/)	{return 26;}
	if($remo =~ /zaq3dc06[c-f]..\.zaq.ne.jp/)	{return 26;}
	if($remo =~ /zaqd37c8[0-5]..\.zaq.ne.jp/)	{return 26;}
	if($remo =~ /zaqd37c8[67]..\.zaq.ne.jp/)	{return 26;}
	if($remo =~ /zaqd37cc[0-9a-c]..\.zaq.ne.jp/)	{return 26;}
	if($remo =~ /zaqd37cc[d-f]..\.zaq.ne.jp/)	{return 26;}
	if($remo =~ /zaqd38730..\.zaq.ne.jp/)		{return 26;}
	if($remo =~ /zaqd3873[1-7]..\.zaq.ne.jp/)	{return 26;}

	#兵庫県
	if($remo =~ /zaq3d2e7...\.zaq.ne.jp/)		{return 28;}
	if($remo =~ /zaq3d2ec[0-7]..\.zaq.ne.jp/)	{return 28;}
	if($remo =~ /zaq3d2ec[89a-f]..\.zaq.ne.jp/)	{return 28;}
	if($remo =~ /zaq3d2ef...\.zaq.ne.jp/)		{return 28;}
	if($remo =~ /zaq3d738[0-9a]..\.zaq.ne.jp/)	{return 28;}
	if($remo =~ /zaq3d738b..\.zaq.ne.jp/)		{return 28;}
	if($remo =~ /zaq3d739...\.zaq.ne.jp/)		{return 28;}
	if($remo =~ /zaq3dc04[0-9]..\.zaq.ne.jp/)	{return 28;}
	if($remo =~ /zaq3dc0(4[a-f]|5.)..\.zaq.ne.jp/)	{return 28;}
	if($remo =~ /zaq3dcd8...\.zaq.ne.jp/)		{return 28;}
	if($remo =~ /zaq3dcdb[89a]..\.zaq.ne.jp/)	{return 28;}
	if($remo =~ /zaq3dcdb[b-f]..\.zaq.ne.jp/)	{return 28;}
	if($remo =~ /zaq7d04[ab]...\.zaq.ne.jp/)	{return 28;}
	if($remo =~ /zaq7d04c...\.zaq.ne.jp/)		{return 28;}
	if($remo =~ /zaqd37c(0[89a-f]|1.)..\.zaq.ne.jp/){return 28;}
	if($remo =~ /zaqd37c7[0-9a-d]..\.zaq.ne.jp/)	{return 28;}
	if($remo =~ /zaqd37c9[0-5]..\.zaq.ne.jp/)	{return 28;}
	if($remo =~ /zaqd37c9[67]..\.zaq.ne.jp/)	{return 28;}
	if($remo =~ /zaqd37c9[89ab]..\.zaq.ne.jp/)	{return 28;}
	if($remo =~ /zaqd3875[89a-f]..\.zaq.ne.jp/)	{return 28;}
	if($remo =~ /zaqdb73f[01]..\.zaq.ne.jp/)	{return 28;}
	if($remo =~ /zaqdb73f[2-9a-f]..\.zaq.ne.jp/)	{return 28;}

	#滋賀県
	if($remo =~ /zaqd378b[4-7]..\.zaq.ne.jp/)	{return 25;}	#残りはすべて大阪府
	#from whois & LogCounter(zaq.txt)
	return 27;
}
sub area47sonet
{
	my ($remo,$ken) = @_;

	if($ken =~ /freedc$/)	{return 901;}
	elsif($ken =~ /ah$/)	{return 901;}
	elsif($ken =~ /te$/)	{$ken =~ s/te$//;}
	elsif($ken =~ /nt$/)	{$ken =~ s/nt$//;}
	elsif($ken =~ /ac$/)	{$ken =~ s/ac$//;}
	elsif($ken =~ /ea$/)	{$ken =~ s/ea$//;}
	elsif($ken =~ /us$/)	{$ken =~ s/us$//;}
	elsif($ken =~ /ff$/)	{$ken =~ s/ff$//;}

	if($ken eq 'tubems')	{return 52;}
	if($ken eq 'west')	{return 57;}
	if($ken eq 'east')	{return 58;}
	if($ken eq 'wpdabw')	{return 60;}

	if($ken eq 'tkyo')	{return 13;}
	if($ken eq 'toky')	{return 13;}
	if($ken eq 'ntky')	{return 13;}
	if($ken eq 'osak')	{return 27;}
	if($ken eq 'sitm')	{return 11;}
	if($ken eq 'uraw')	{return 11;}
	if($ken eq 'ykhm')	{return 14;}
	if($ken eq 'kngw')	{return 14;}
	if($ken eq 'siga')	{return 25;}
	if($ken eq 'okym')	{return 33;}
	if($ken eq 'fksm')	{return 7;}
	if($ken eq 'aici')	{return 23;}
	if($ken eq 'ngya')	{return 23;}
	if($ken eq 'kagw')	{return 37;}
	if($ken eq 'ymgc')	{return 35;}
	if($ken eq 'hkid')	{return 1;}
	if($ken eq 'sppr')	{return 1;}
	if($ken eq 'chib')	{return 12;}
	if($ken eq 'miyg')	{return 4;}
	if($ken eq 'sndi')	{return 4;}
	if($ken eq 'kyot')	{return 26;}
	if($ken eq 'gunm')	{return 10;}
	if($ken eq 'aomr')	{return 2;}
	if($ken eq 'fkok')	{return 40;}
	if($ken eq 'oita')	{return 44;}
	if($ken eq 'mie')	{return 24;}
	if($ken eq 'mie-')	{return 24;}
	if($ken eq 'hrsm')	{return 34;}
	if($ken eq 'tocg')	{return 9;}
	if($ken eq 'kobe')	{return 28;}
	if($ken eq 'hyog')	{return 28;}
	if($ken eq 'akit')	{return 5;}
	if($ken eq 'szok')	{return 22;}
	if($ken eq 'nigt')	{return 15;}
	if($ken eq 'ymns')	{return 19;}
	if($ken eq 'oknw')	{return 47;}
	if($ken eq 'fuki')	{return 18;}
	if($ken eq 'ibrk')	{return 8;}
	if($ken eq 'toym')	{return 16;}
	if($ken eq 'koci')	{return 39;}
	if($ken eq 'gifu')	{return 21;}
	if($ken eq 'tksm')	{return 36;}
	if($ken eq 'kgsm')	{return 46;}
	if($ken eq 'wkym')	{return 30;}
	if($ken eq 'nara')	{return 29;}
	if($ken eq 'iwat')	{return 3;}
	if($ken eq 'ngno')	{return 20;}
	if($ken eq 'iskw')	{return 17;}
	if($ken eq 'saga')	{return 41;}
	if($ken eq 'ymgt')	{return 6;}
	if($ken eq 'ehim')	{return 38;}
	if($ken eq 'kmmt')	{return 43;}
	if($ken eq 'myzk')	{return 45;}
	if($ken eq 'totr')	{return 31;}
	if($ken eq 'shiga')	{return 25;}
	if($ken eq 'ngsk')	{return 42;}
	if($ken eq 'shimane')	{return 32;}

	if($ken eq 'w032bw')	{return 60;}
	if($ken eq 'onenum')	{return 61;}
	if($ken eq 'tubehm')	{return 72;}


#	if(open(LX,">> HOST29.000")){print LX "(sonet)$remo($ken)\n";close(LX);}
	return 0			;
}
sub area47dti
{
	my ($remo,$ken) = @_;

	if($ken eq 'airedge')	{return 60;}
	if($ken eq 'west')	{return 57;}
	if($ken eq 'east')	{return 58;}
	if($ken eq 'otemachi')	{return 13;}
	if($ken eq 'iidabashi')	{return 13;}
	if($ken eq 'tokyo')	{return 13;}
	if($ken eq 'tachikawa')	{return 13;}
	if($ken eq 'osaka')	{return 27;}
	if($ken eq 'ohsaka')	{return 27;}
	if($ken eq 'saitama')	{return 11;}
	if($ken eq 'soka')	{return 11;}
	if($ken eq 'kuki')	{return 11;}
	if($ken eq 'urawa')	{return 11;}
	if($ken eq 'kanagawa')	{return 14;}
	if($ken eq 'yokohama')	{return 14;}
	if($ken eq 'kawasaki')	{return 14;}
	if($ken eq 'siga')	{return 25;}
	if($ken eq 'otsu')	{return 25;}
	if($ken eq 'okayama')	{return 33;}
	if($ken eq 'fukusima')	{return 7;}
	if($ken eq 'fukushima')	{return 7;}
	if($ken eq 'aichi')	{return 23;}
	if($ken eq 'nagoya')	{return 23;}
	if($ken eq 'yokkaichi')	{return 23;}
	if($ken eq 'kagawa')	{return 37;}
	if($ken eq 'takamatsu')	{return 37;}
	if($ken eq 'yamaguchi')	{return 35;}
	if($ken eq 'hokkaido')	{return 1;}
	if($ken eq 'sapporo')	{return 1;}
	if($ken eq 'osaka')	{return 27;}
	if($ken eq 'chiba')	{return 12;}
	if($ken eq 'ichikawa')	{return 12;}
	if($ken eq 'miyagi')	{return 4;}
	if($ken eq 'sendai')	{return 4;}
	if($ken eq 'kyoto')	{return 26;}
	if($ken eq 'gunma')	{return 10;}
	if($ken eq 'maebashi')	{return 10;}
	if($ken eq 'aomori')	{return 2;}
	if($ken eq 'fukuoka')	{return 40;}
	if($ken eq 'kurume')	{return 40;}
	if($ken eq 'oita')	{return 44;}
	if($ken eq 'mie')	{return 24;}
	if($ken eq 'hiroshima')	{return 34;}
	if($ken eq 'hirosima')	{return 34;}
	if($ken eq 'tochigi')	{return 9;}
	if($ken eq 'totigi')	{return 9;}
	if($ken eq 'utsunomiya'){return 9;}
	if($ken eq 'nagasaki')	{return 42;}
	if($ken eq 'hyogo')	{return 28;}
	if($ken eq 'kobe')	{return 28;}
	if($ken eq 'akita')	{return 5;}
	if($ken eq 'shizuoka')	{return 22;}
	if($ken eq 'niigata')	{return 15;}
	if($ken eq 'shimane')	{return 32;}
	if($ken eq 'yamanashi')	{return 19;}
	if($ken eq 'kofu')	{return 19;}
	if($ken eq 'okinawa')	{return 47;}
	if($ken eq 'fukui')	{return 18;}
	if($ken eq 'ibaraki')	{return 8;}
	if($ken eq 'toyama')	{return 16;}
	if($ken eq 'kochi')	{return 39;}
	if($ken eq 'gifu')	{return 21;}
	if($ken eq 'tokushima')	{return 36;}
	if($ken eq 'shiga')	{return 25;}
	if($ken eq 'kagoshima')	{return 46;}
	if($ken eq 'wakayama')	{return 30;}
	if($ken eq 'nara')	{return 29;}
	if($ken eq 'iwate')	{return 3;}
	if($ken eq 'nagano')	{return 20;}
	if($ken eq 'ishikawa')	{return 17;}
	if($ken eq 'kanazawa')	{return 17;}
	if($ken eq 'saga')	{return 41;}
	if($ken eq 'yamagata')	{return 6;}
	if($ken eq 'ehime')	{return 38;}
	if($ken eq 'matsuyama')	{return 38;}
	if($ken eq 'kumamoto')	{return 43;}
	if($ken eq 'miyazaki')	{return 45;}
	if($ken eq 'tottori')	{return 31;}

#	if(open(LX,">> HOST29.000")){print LX "$remo($ken)\n";close(LX);}
	return 0			;
}
sub area47odn
{
	my ($GB,$remo,$ken) = @_;

	if($ken =~ /^([A-Z0-9]+)[a-z]+-/)	{$ken = $1;}

	if($ken eq 'AH1')	{return 60;}	# 空
	if($ken eq 'TEP')	{return 51;}	# 関東地方
	if($ken eq 'CEP')	{return 52;}	# 中部地方
	if($ken eq 'EAO')	{return 57;}	# 西日本
	if($ken eq 'EAT')	{return 58;}	# 東日本
	if($ken eq 'SAP')	{return 1;}	# 北海道
	if($ken eq 'SOD')	{return 1;}	# 北海道
	if($ken eq 'OKI')	{return 2;}	# 青森
	if($ken eq 'MRN')	{return 3;}	# 岩手
	if($ken eq 'AOB')	{return 4;}	# 宮城
	if($ken eq 'NKD')	{return 5;}	# 秋田
	if($ken eq 'IMZ')	{return 6;}	# 山形
	if($ken eq 'HNZ')	{return 7;}	# 福島
	if($ken eq 'FKH')	{return 7;}	# 福島
	if($ken eq 'AKA')	{return 8;}	# 茨城
	if($ken eq 'HRD')	{return 9;}	# 栃木
	if($ken eq 'KKR')	{return 10;}	# 群馬
	if($ken eq 'SKN')	{return 11;}	# 埼玉
	if($ken eq 'FNA')	{return 12;}	# 千葉
	if($ken eq 'OFS')	{return 13;}	# 東京
	if($ken eq 'HDO')	{return 14;}	# 神奈川
	if($ken eq 'NGN')	{return 15;}	# 新潟
	if($ken eq 'TYN')	{return 16;}	# 富山
	if($ken eq 'KNZ')	{return 17;}	# 石川
	if($ken eq 'KNN')	{return 17;}	# 石川
	if($ken eq 'FKN')	{return 18;}	# 福井
	if($ken eq 'KFN')	{return 19;}	# 山梨
	if($ken eq 'SYD')	{return 20;}	# 長野
	if($ken eq 'GFN')	{return 21;}	# 岐阜
	if($ken eq 'SDD')	{return 22;}	# 静岡
	if($ken eq 'SSJ')	{return 23;}	# 愛知
	if($ken eq 'YKM')	{return 24;}	# 三重
	if($ken eq 'OTU')	{return 25;}	# 滋賀
	if($ken eq 'KYN')	{return 26;}	# 京都
	if($ken eq 'KYO')	{return 26;}	# 京都
	if($ken eq 'NWT')	{return 27;}	# 大阪
	if($ken eq 'OSA')	{return 27;}	# 大阪
	if($ken eq 'KBM')	{return 28;}	# 兵庫
	if($ken eq 'DAJ')	{return 29;}	# 奈良
	if($ken eq 'WKN')	{return 30;}	# 和歌山
	if($ken eq 'TTN')	{return 31;}	# 鳥取
	if($ken eq 'SMN')	{return 32;}	# 島根
	if($ken eq 'IMM')	{return 33;}	# 岡山
	if($ken eq 'NIH')	{return 34;}	# 広島
	if($ken eq 'YGN')	{return 35;}	# 山口
	if($ken eq 'TKN')	{return 36;}	# 徳島
	if($ken eq 'TMN')	{return 37;}	# 香川
	if($ken eq 'TKH')	{return 37;}	# 香川
	if($ken eq 'MYN')	{return 38;}	# 愛媛
	if($ken eq 'KCN')	{return 39;}	# 高知
	if($ken eq 'FKC')	{return 40;}	# 福岡
	if($ken eq 'TGS')	{return 41;}	# 佐賀
	if($ken eq 'SCO')	{return 42;}	# 長崎
	if($ken eq 'OBY')	{return 43;}	# 熊本
	if($ken eq 'OMC')	{return 44;}	# 大分
	if($ken eq 'MZN')	{return 45;}	# 宮崎
	if($ken eq 'KMI')	{return 46;}	# 鹿児島
	if($ken eq 'YRM')	{return 47;}	# 沖縄
	if($ken eq 'ATU')	{return 61;}	# ダイアルアップ
	if($ken eq 'TYO')	{return 61;}	# ダイアルアップ
	if($ken eq 'CBC')	{return 61;}	# ダイアルアップ
	if($ken eq 'TBT')	{return 61;}	# ダイアルアップ
	if($ken eq 'KAJ')	{return 61;}	# ダイアルアップ
	if($ken eq 'PAX')	{return 61;}	# ダイアルアップ
	if($ken eq 'RIF')	{return 61;}	# ダイアルアップ
	if($ken eq 'NIG')	{return 61;}	# ダイアルアップ

	if($ken eq 'NOT')	{return 66;}

	return 66;
}
sub area47unetsurf
{
	my ($remo,$ken) = @_;

	if($ken =~ /[a-zA-Z]+-([a-z][a-z])\.[\d-]+/)	{$ken = $1;}

	if($ken =~ /\.at$/)	{return 13;}
	if($ken eq 'es')	{return 58;}
	if($ken eq 'os')	{return 57;}
	if($ken eq 'tk')	{return 58;}

#	if(open(LX,">> HOST29.000")){print LX "(unetsurf)$remo($ken)\n";close(LX);}
	return 0;
}
sub area472iij
{
	my ($remo,$ken) = @_;

	if($ken =~ /[a-zA-Z]+([a-z][a-z])\./)	{$ken = $1;}

#	if(open(LX,">> HOST29.000")){print LX "(2iij)$remo($ken)\n";close(LX);}
	return 90;
}
sub area47ac
{
	my ($remo,$ken) = @_;

	if($ken eq 'hokkyodai')		{return 1;}
	if($ken eq 'hit')		{return 1;}
	if($ken eq 'midorigaoka')	{return 1;}
	if($ken eq 'hokusei')		{return 1;}
	if($ken eq 'hokudai')		{return 1;}
	if($ken eq 'iwate-pu')		{return 1;}
	if($ken eq 'ichinoseki')	{return 3;}
	if($ken eq 'ichinoseki')	{return 3;}
	if($ken eq 'tohoku')		{return 4;}
	if($ken eq 'shokei')		{return 4;}
	if($ken eq 'seiwa')		{return 4;}
	if($ken eq 'tohoku-gakuin')	{return 4;}
	if($ken eq 'sendai-ct')		{return 4;}
	if($ken eq 'akita-nct')		{return 5;}
	if($ken eq 'yamagata-u')	{return 6;}
	if($ken eq 'u-aizu')		{return 7;}
	if($ken eq 'fmu')		{return 7;}
	if($ken eq 'tsukuba')		{return 8;}
	if($ken eq 'ibaraki')		{return 8;}
	if($ken eq 'jichi')		{return 9;}
	if($ken eq 'utsunomiya-u')	{return 9;}
	if($ken eq 'dendai')		{return 11;}
	if($ken eq 'saitama-med')	{return 11;}
	if($ken eq 'dokkyo')		{return 11;}
	if($ken eq 'waseda')		{return 13;}
	if($ken eq 'tus')		{return 13;}
	if($ken eq 'uec')		{return 13;}
	if($ken eq 'titech')		{return 13;}
	if($ken eq 'jec')		{return 13;}
	if($ken eq 'nodai')		{return 13;}
	if($ken eq 'tuat')		{return 13;}
	if($ken eq 'jikei')		{return 13;}
	if($ken eq 'shobi')		{return 13;}
	if($ken eq 'keio')		{return 13;}
	if($ken eq 'gakushuin')		{return 13;}
	if($ken eq 'neec')		{return 13;}
	if($ken eq 'twmu')		{return 13;}
	if($ken eq 'icu')		{return 13;}
	if($ken eq 'toho-u')		{return 13;}
	if($ken eq 'kokugakuin')	{return 13;}
	if($ken eq 'u-tokyo')		{return 13;}
	if($ken eq 'nihon-u')		{return 13;}
	if($ken eq 'shobi-u')		{return 13;}
	if($ken eq 'chuo-u')		{return 13;}
	if($ken eq 'toyo')		{return 13;}
	if($ken eq 'kitasato-u')	{return 13;}
	if($ken eq 'teikyo-u')		{return 13;}
	if($ken eq 'kaiyodai')		{return 13;}
	if($ken eq 'ynu')		{return 14;}
	if($ken eq 'kanagawa-u')	{return 14;}
	if($ken eq 'toin')		{return 14;}
	if($ken eq 'niigata-u')		{return 15;}
	if($ken eq 'nagaokaut')		{return 15;}
	if($ken eq 'toyama-nct')	{return 16;}
	if($ken eq 'jaist')		{return 17;}
	if($ken eq 'fukui-nct')		{return 18;}
	if($ken eq 'shinshu-u')		{return 20;}
	if($ken eq 'iamas')		{return 21;}
	if($ken eq 'gifu-u')		{return 21;}
	if($ken eq 'shizuoka')		{return 22;}
	if($ken eq 'numazu-ct')		{return 22;}
	if($ken eq 'nig')		{return 22;}
	if($ken eq 'u-shizuoka-ken')	{return 22;}
	if($ken eq 'nitech')		{return 23;}
	if($ken eq 'nifs')		{return 23;}
	if($ken eq 'tut')		{return 23;}
	if($ken eq 'sozo')		{return 23;}
	if($ken eq 'chubu')		{return 23;}
	if($ken eq 'nanzan-u')		{return 23;}
	if($ken eq 'nagoya-u')		{return 23;}
	if($ken eq 'ims')		{return 23;}
	if($ken eq 'nibb')		{return 23;}
	if($ken eq 'tsudagakuen')	{return 24;}
	if($ken eq 'mie-u')		{return 24;}
	if($ken eq 'toba-cmt')		{return 24;}
	if($ken eq 'ritsumei')		{return 26;}
	if($ken eq 'kpu')		{return 26;}
	if($ken eq 'doshisha')		{return 26;}
	if($ken eq 'kyoto-u')		{return 26;}
	if($ken eq 'kit')		{return 26;}
	if($ken eq 'osaka-u')		{return 27;}
	if($ken eq 'kwansei')		{return 28;}
	if($ken eq 'kyoto-u')		{return 28;}
	if($ken eq 'kobedenshi')	{return 28;}
	if($ken eq 'hyo-med')		{return 28;}
	if($ken eq 'nara-su')		{return 29;}
	if($ken eq 'wakayama-u')	{return 30;}
	if($ken eq 'shimane-u')		{return 32;}
	if($ken eq 'ous')		{return 33;}
	if($ken eq 'kindai')		{return 33;}
	if($ken eq 'hiroshima-cu')	{return 34;}
	if($ken eq 'it-hiroshima')	{return 34;}
	if($ken eq 'yamaguchi-u')	{return 35;}
	if($ken eq 'tokushima-u')	{return 36;}
	if($ken eq 'shinonome')		{return 38;}
	if($ken eq 'kochi-u')		{return 39;}
	if($ken eq 'fit')		{return 40;}
	if($ken eq 'kyutech')		{return 40;}
	if($ken eq 'fukuoka-u')		{return 40;}
	if($ken eq 'kyushu-u')		{return 40;}
	if($ken eq 'nagasaki-u')	{return 41;}
	if($ken eq 'kumamoto-u')	{return 43;}
	if($ken eq 'miyazaki-u')	{return 45;}
	if($ken eq 'u-ryukyu')		{return 47;}
	if($ken eq 'kbc')		{return 47;}

#	if(open(LX,">> HOST29.001")){print LX "(ac.jp)$remo($ken)\n";close(LX);}
	return 0;
}
sub area47vectant
{
	my ($remo,$ken) = @_;

	my $we = 57		;	#e=57 w=58
	if($ken =~ /^e/)	{$we = 57;}
	if($ken =~ /^w/)	{$we = 58;}

	if($ken =~ /Bas1/)			{return $we;}
	if($ken =~ /IFL7/)			{return $we;}
	if($ken =~ /AFL/)			{return $we;}
	if($ken =~ /BFL/)			{return $we;}
	if($ken =~ /BN/)			{return $we;}
	if($ken =~ /BS/)			{return $we;}
	if($ken =~ /air/)			{return 60;}
	if($ken =~ /[A-Z]([a-z]+)FL\d+/)	{$ken = $1;}

	if($ken eq 'wide')			{return 69;}

	return &area47dti($remo,$ken)	;
}
sub area47nttpc
{
	my ($remo,$ken) = @_;

	if($ken =~ /[a-z]-([a-z]+)/)	{$ken = $1;}

	return &area47dti($remo,$ken)	;
}
sub area47ocn
{
	my ($remo,$ken) = @_	;

	$ken =~ s/\.ovcs//	;
	if($ken =~ /-/)	{return 69;}

	return &area47dti($remo,$ken)	;
}
sub area47catv
{
	my ($remo) = @_;

	if($remo =~ /\.seikyou\.ne\.jp$/)			{return 68;}
	if($remo =~ /\.wakwak\.ne\.jp$/)			{return 68;}
	if($remo =~ /\.eaccess\.ne\.jp$/)			{return 68;}
	if($remo =~ /\.highway\.ne\.jp$/)			{return 68;}
	if($remo =~ /\.bit-drive\.ne\.jp$/)			{return 68;}
	if($remo =~ /\.pwd\.ne\.jp$/)				{return 68;}
	if($remo =~ /\.([a-z\d]+)\.step\.ne\.jp$/)
	{
		my $ken = $1			;
		if($ken =~ /c5([a-z]+)/)	{$ken = $1;}
		return &area47mesh($remo,$ken)	;
	}
	if($remo =~ /\.bbiq\.jp$/)	#bbiq.jp 九州地方
	{
		if($remo =~ /hakata03/)	{return 41;}
		return 40;
	}

if($remo =~ /\.ccnw\.ne\.jp$/)		{return 23;}	#.*.ccnw.ne.jp$ 中部ケーブルネットワーク（愛知・岐阜）
if($remo =~ /\.katch\.ne\.jp$/)		{return 23;}	#.*.katch.ne.jp$ KATCH-NET（愛知）
if($remo =~ /\.enat\.org$/)		{return 21;}	#.*.enat.org$ City.Ena'T.Org（岐阜県恵那市）
if($remo =~ /\.thn\.ne\.jp$/)		{return 22;}	#.*.thn.ne.jp$ THN CATVインターネットサービス（静岡）
if($remo =~ /\.kitanet\.ne\.jp$/)	{return 13;}	#.*.kitanet.ne.jp$ 北ネットインターネットサービス（東京都北区）
if($remo =~ /\.hot-cha\.tv$/)		{return 35;}	#.*.hot-cha.tv$ ほっちゃテレビ（山口県長門市）
if($remo =~ /\.across\.or\.jp$/)	{return 22;}	#.*.across.or.jp$ ドリームウェーブ静岡（静岡）
if($remo =~ /\.cty-net\.ne\.jp$/)	{return 24;}	#.*.cty-net.ne.jp$ シー・ティー・ワイ インターネット接続サービス（三重）
if($remo =~ /\.miyazaki-catv\.ne\.jp$/)	{return 45;}	#.*.miyazaki-catv.ne.jp$ MCN 宮崎ケーブルテレビ（宮崎）
if($remo =~ /\.tac-net\.ne\.jp$/)	{return 23;}	#.*.tac-net.ne.jp$ 知多半島ケーブルネットワーク（愛知）
if($remo =~ /\.orihime\.ne\.jp$/)	{return 23;}	#.*.orihime.ne.jp$ おりひめねっと（愛知県一宮市）
if($remo =~ /\.starcat\.ne\.jp$/)	{return 23;}	#.*.starcat.ne.jp$ Starcatインターネット（愛知県名古屋市）
if($remo =~ /\.nmt\.ne\.jp$/)		{return 36;}	#.*.nmt.ne.jp$ NMTネット（徳島）
if($remo =~ /\.tcn-catv\.ne\.jp$/)	{return 13;}	#.*.tcn-catv.ne.jp$ 東京ケーブルネットワーク（東京）
if($remo =~ /\.kcv\.ne\.jp$/)		{return 33;}	#.*.kcv.ne.jp$ ゆめネットワーク（岡山）
if($remo =~ /\.csf\.ne\.jp$/)		{return 40;}	#.*.csf.ne.jp$ ケーブルステーション福岡（福岡）
if($remo =~ /\.cts-net\.ne\.jp$/)	{return 44;}	#.*.cts-net.ne.jp$ CTSインターネットサービス（大分）
if($remo =~ /\.scn-net\.ne\.jp$/)	{return 14;}	#.*.scn-net.ne.jp$ 湘南ケーブルネットワーク（神奈川）
if($remo =~ /\.amigo\d?\.ne\.jp$/)	{return 24;}	#.*.amigo2.ne.jp$ アミーゴインターネットサービス（三重）
if($remo =~ /\.catvy\.ne\.jp$/)		{return 6;}	#.*.catvy.ne.jp$ ケーブルテレビ山形（山形）
if($remo =~ /\.ztv\.ne\.jp$/)		{return 24;}	#.*.ztv.ne.jp$ Z-LAN（三重）
if($remo =~ /\.actv\.ne\.jp$/)		{return 2;}	#.*.actv.ne.jp$ 青森ケーブルテレビ（青森）
if($remo =~ /\.hicat\.ne\.jp$/)		{return 34;}	#.*.hicat.ne.jp$ 広島シティケーブルテレビ HICAT（広島）
if($remo =~ /\.kcn\.ne\.jp$/)		{return 53;}	#.*.kcn.ne.jp$ KCN-Net Service（近畿）
if($remo =~ /\.itscom\.jp$/)		{return 13;}	#.*.itscom.jp$ イッツ・コミュニケーションズ株式会社（東京・神奈川）
if($remo =~ /\.246\.ne\.jp$/)		{return 13;}	#.*.246.ne.jp$ イッツ・コミュニケーションズ株式会社（東京・神奈川）
if($remo =~ /\.aikis\.or\.jp$/)		{return 30;}	#.*.aikis.or.jp$ あいあい紀州ネット（和歌山）
if($remo =~ /\.coara\.or\.jp$/)		{return 40;}	#.*.coara.or.jp$ ニューCOARA（大分・福岡）
if($remo =~ /\.kumin\.ne\.jp$/)		{return 40;}	#.*.kumin.ne.jp$ くーみんブロードバンド（福岡）
if($remo =~ /\.gujo-tv\.ne\.jp$/)	{return 21;}	#.*.gujo-tv.ne.jp$ 郡上広域連合（岐阜）
if($remo =~ /\.hcvnet.jp$/)		{return 31;}	#.*.hcvnet.jp$ 株式会社　コンピュータ・サービス（鳥取）
if($remo =~ /\.spacelan\.ne\.jp$/)	{return 17;}	#.*.spacelan.ne.jp$ 金沢ケーブルテレビネット（石川）
if($remo =~ /\.ayu\.ne\.jp$/)		{return 14;}	#.*.ayu.ne.jp$ 厚木伊勢原ケーブルネットワーク（神奈川）
if($remo =~ /\.cna\.ne\.jp$/)		{return 5;}	#.*.cna.ne.jp$ 秋田ケーブルテレビ（秋田）
if($remo =~ /\.catvnet\.ne\.jp$/)	{return 54;}	#.*.catvnet.ne.jp$ CATVネットワークサービス（四国）
if($remo =~ /\.m-net\.ne\.jp$/)		{return 13;}	#.*.m-net.ne.jp$ My TV（東京）
if($remo =~ /\.ncv\.ne\.jp$/)		{return 1;}	#.*.ncv.ne.jp$ NCV（北海道函館市）
if($remo =~ /\.adachi\.ne\.jp$/)	{return 13;}	#.*.adachi.ne.jp$ ケーブルテレビ足立（東京）
if($remo =~ /\.wac2\.net$/)		{return 28;}	#.*.wac2.net$ わくわくネットワーク（兵庫）
if($remo =~ /\.net3-tv\.net$/)		{return 16;}	#.*.net3-tv.net$ Net3 Internet（富山）
if($remo =~ /\.lcv\.ne\.jp$/)		{return 20;}	#.*.lcv.ne.jp$ LCV-Net（長野）
if($remo =~ /\.tontonme\.ne\.jp$/)	{return 47;}	#.*.tontonme.ne.jp$ とんとんみ〜（沖縄）
if($remo =~ /\.denkosekka\.ne\.jp$/)	{return 51;}	#.*.denkosekka.ne.jp$ 電光石火（平成電電）
if($remo =~ /\.mecha\.ne\.jp$/)		{return 24;}	#.*.mecha.ne.jp$ MeCha（ケーブルネット鈴鹿）
if($remo =~ /\.oninet\.ne\.jp$/)	{return 33;}	#.*.oninet.ne.jp$ oniネット（岡山）
if($remo =~ /\.rmc\.ne\.jp$/)		{return 25;}	#.*.rmc.ne.jp$ Rmcネットワーク（滋賀）
if($remo =~ /\.mco\.ne\.jp$/)		{return 47;}	#.*.mco.ne.jp$ ちゃんぷるネット（沖縄）
if($remo =~ /\.aitai\.ne\.jp$/)		{return 23;}	#.*.aitai.ne.jp$ Aitai net（愛知・岐阜）
if($remo =~ /\.ocv\.ne\.jp$/)		{return 51;}	#.*.ocv.ne.jp$ 小田急ケーブルテレビジョン

if($remo =~ /\.nns\.ne\.jp$/)		{return 19;}	#*.nns.ne.jp$ 日本ネットワークサービス（山梨）
if($remo =~ /\.cablenet\.ne\.jp$/)	{return 11;}	#.*.cablenet.ne.jp$ ケーブルネット埼玉
if($remo =~ /\.milare-tv\.ne\.jp$/)	{return 16;}	#.*.milare-tv.ne.jp$ みらーれTV（富山）
if($remo =~ /\.mni\.ne\.jp$/)		{return 4;}	#.*.mni.ne.jp$ ケーブルテレビ キャベツ(宮城)
if($remo =~ /\.gallery\.ne\.jp$/)	{return 39;}	#.*.gallery.ne.jp$ インターネットGallery（高知）
if($remo =~ /\.cans\.ne\.jp$/)		{return 26;}	#.*.cans.ne.jp$ ケーブルネットワークそのべ（京都）
if($remo =~ /\.ict\.ne\.jp$/)		{return 24;}	#.*.ict.ne.jp$ 伊賀上野ケーブルテレビ（三重）
if($remo =~ /\.ctk\.ne\.jp$/)		{return 21;}	#.*.ctk.ne.jp$ ケーブルテレビ可児（岐阜）
if($remo =~ /\.ucatv\.ne\.jp$/)		{return 9;}	#.*.ucatv.ne.jp$ 宇都宮ケーブルテレビ（栃木）
if($remo =~ /\.cncm\.ne\.jp$/)		{return 42;}	#.*.cncm.ne.jp$ 長崎ケーブルメディア（長崎）
if($remo =~ /\.itakita\.net$/)		{return 5;}	#.*.itakita.net$ 秋田県IT基盤協会
if($remo =~ /\.ogaki-tv\.ne\.jp$/)	{return 21;}	#.*.ogaki-tv.ne.jp$ 大垣ケーブルテレビ（岐阜）
if($remo =~ /\.t-net\.ne\.jp$/)		{return 13;}	#.*.t-net.ne.jp$ 多摩ケーブルネットワーク（東京）
if($remo =~ /\.fureai-ch\.ne\.jp$/)	{return 34;}	#.*.fureai-ch.ne.jp$ ふれあいチャンネル（広島）
if($remo =~ /\.synapse\.ne\.jp$/)	{return 46;}	#.*.synapse.ne.jp$ シナプス（鹿児島）
if($remo =~ /\.dokidoki\.ne\.jp$/)	{return 38;}	#.*.dokidoki.ne.jp$ マジカルサイト・インターネットサービス（愛媛）
if($remo =~ /\.shizuokanet\.ne\.jp$/)	{return 22;}	#.*.shizuokanet.ne.jp$ 静岡インターネット（静岡）
if($remo =~ /\.kyoto-inet\.or\.jp$/)	{return 26;}	#.*.kyoto-inet.or.jp$ 京都アイネットBB（京都）
if($remo =~ /\.wainet\.ne\.jp$/)	{return 45;}	#.*.wainet.ne.jp$ わいWaiネット（宮崎）
if($remo =~ /\.kcn-tv\.ne\.jp$/)	{return 43;}	#.*.kcn-tv.ne.jp$ 熊本ケーブルネットワーク（熊本）
if($remo =~ /\.d-b\.ne\.jp$/)		{return 44;}	#.*.d-b.ne.jp$ 大分合同新聞インターネット（大分）
if($remo =~ /\.parkcity\.ne\.jp$/)	{return 13;}	#.*.parkcity.ne.jp$ 武蔵野三鷹ケーブルテレビ（東京）
if($remo =~ /\.nirai\.ne\.jp$/)		{return 47;}	#.*.nirai.ne.jp$ 沖縄ケーブルネットワーク（沖縄）
if($remo =~ /\.cosmos\.ne\.jp$/)	{return 47;}	#.*.cosmos.ne.jp$ COSMOS NET COMMUNICATIONS（沖縄）
if($remo =~ /\.kct\.ne\.jp$/)		{return 33;}	#.*.kct.ne.jp$ 倉敷ケーブルテレビ（岡山）
if($remo =~ /\.me-h\.ne\.jp$/)		{return 1;}	#.*.me-h.ne.jp$ ME北海道ネットワークサービス（北海道）
if($remo =~ /\.asagaotv\.ne\.jp$/)	{return 17;}	#.*.asagaotv.ne.jp$ あさがおテレビ（石川）
if($remo =~ /\.medias\.ne\.jp$/)	{return 23;}	#.*.medias.ne.jp$ 知多メディアスネットワーク
if($remo =~ /\.octv\.ne\.jp$/)		{return 1;}	#.*.octv.ne.jp$ 帯広シティーケーブル（北海道）
if($remo =~ /\.wbs\.ne\.jp$/)		{return 22;}	#.*.wbs.ne.jp$ Web静岡
if($remo =~ /\.commufa\.jp$/)		{return 52;}	#.*.commufa.jp$ コミュファ（中部電力）
if($remo =~ /\.sni\.ne\.jp$/)		{return 41;}	#.*.sni.ne.jp$ 佐賀新聞・長崎新聞インターネット（佐賀・長崎）
if($remo =~ /\.netwave\.or\.jp$/)	{return 54;}	#.*.netwave.or.jp$ Netwaveインターネットサービス（四国）
if($remo =~ /\.mopera\.ne\.jp$/)	{return 60;}	#.*.mopera.ne.jp$ モペラ（FOMAの接続サービス？）
if($remo =~ /\.koalanet\.ne\.jp$/)	{return 12;}	#.*.koalanet.ne.jp$ コアラテレビ（千葉）
if($remo =~ /\.clovernet\.ne\.jp$/)	{return 23;}	#.*.clovernet.ne.jp$ クローバーネット（愛知）
if($remo =~ /\.hottv\.ne\.jp$/)		{return 25;}	#.*.hottv.ne.jp$ 近江八幡ケーブルネットワーク株式会社（滋賀県近江八幡市）
if($remo =~ /\.tvk\.ne\.jp$/)		{return 17;}	#.*.tvk.ne.jp$ テレビ小松（石川）
if($remo =~ /\.tcn\.ne\.jp$/)		{return 36;}	#.*.tcn.ne.jp$ 徳島ケーブルネットワーク（徳島）
if($remo =~ /\.ccv\.ne\.jp$/)		{return 34;}	#.*.ccv.ne.jp$ ふれあいチャンネル（広島）
if($remo =~ /\.cnc\.jp$/)		{return 12;}	#.*.cnc.jp$ 株式会社ケーブルネットワーク千葉
if($remo =~ /\.e-catv\.ne\.jp$/)	{return 38;}	#.*.e-catv.ne.jp$ 愛媛CATV（愛媛）
if($remo =~ /\.wind\.ne\.jp$/)		{return 10;}	#.*.wind.ne.jp$ 群馬インターネット（群馬）
if($remo =~ /\.hit-5\.net$/)		{return 32;}	#.*.hit-5.net$ 雲州わがとこテレビ（島根）
if($remo =~ /\.yukiguni\.net$/)		{return 15;}	#.*.yukiguni.net$ ゆきぐにネット（新潟）
if($remo =~ /\.kct\.ad\.jp$/)		{return 33;}	#.*.kct.ad.jp$ 株式会社倉敷ケーブルテレビ（岡山）
if($remo =~ /\.ictnet\.ne\.jp$/)	{return 3;}	#.*.ictnet.ne.jp$ 岩手ケーブルテレビジョン（岩手）
if($remo =~ /\.chikamatsu\.ne\.jp$/)	{return 13;}	#.*.chikamatsu.ne.jp$ PS/PLAZA 地下松（東京都千代田区）
if($remo =~ /\.miracle\.ne\.jp$/)	{return 55;}	#.*.miracle.ne.jp$ San-inNet（山陰地方）
if($remo =~ /\.avis\.ne\.jp$/)		{return 71;}	#.*.avis.ne.jp$ アヴィス（長野）
if($remo =~ /\.fcv\.ne\.jp$/)		{return 30;}	#.*.fcv.ne.jp$ 福岡ケーブルビジョン
if($remo =~ /\.inacatv\.ne\.jp$/)	{return 20;}	#.*.inacatv.ne.jp$ 伊那ケーブルテレビジョン
if($remo =~ /\.incl\.ne\.jp$/)		{return 70;}	#.*.incl.ne.jp$ インクル（北陸地方）
if($remo =~ /\.c-able\.ne\.jp$/)	{return 35;}	#.*.c-able.ne.jp$ 山口ケーブルビジョン（山口）
if($remo =~ /\.tees\.ne\.jp$/)		{return 23;}	#.*.tees.ne.jp$ 豊橋ケーブルネットワーク（愛知県豊橋市・田原市）

if($remo =~ /\.cty8\.com$/)		{return 16;}	#.*.cty8.com$ ケーブルテレビ八尾（富山）
if($remo =~ /\.bc9\.ne\.jp$/)		{return 9;}	#.*.bc9.ne.jp$ 鹿沼ケーブルテレビ（栃木鹿沼市）
if($remo =~ /\.cc9\.ne\.jp$/)		{return 9;}	#.*.cc9.ne.jp$ 栃木ケーブルテレビ（栃木・群馬）
if($remo =~ /\.cnh\.ne\.jp$/)		{return 16;}	#.*.cnh.ne.jp$ 氷見・羽咋ケーブルネット（富山県氷見市・羽咋市）
if($remo =~ /\.catvmics\.ne\.jp$/)	{return 23;}	#.*.catvmics.ne.jp$ ミクスネットワーク（愛知県岡崎市）
if($remo =~ /\.cts\.ne\.jp$/)		{return 13;}	#.*.cts.ne.jp$ ケーブルテレビ品川（東京都品川区）
if($remo =~ /\.tcat\.ne\.jp$/)		{return 11;}	#.*.tcat.ne.jp$ テプコケーブルテレビ（埼玉）
if($remo =~ /\.tcnet\.ne\.jp$/)		{return 16;}	#.*.tcnet.ne.jp$ 高岡ケーブルネットワーク（富山県高岡市・福岡町）
if($remo =~ /\.winknet\.ne\.jp$/)	{return 28;}	#.*.winknet.ne.jp$ 姫路ケーブルテレビ（兵庫県姫路市）
if($remo =~ /\.usennet\.ne\.jp$/)	{return 25;}	#.*.usennet.ne.jp$ 守山有線放送（滋賀県守山市）
if($remo =~ /\.ictv\.ne\.jp$/)		{return 11;}	#.*.ictv.ne.jp$ 入間ケーブルテレビ（埼玉県入間市）
if($remo =~ /\.otv\.ne\.jp$/)		{return 10;}	#.*.otv.ne.jp$ 群馬ケーブルメディア（群馬県太田市・桐生市）
if($remo =~ /\.sdx\.ne\.jp$/)		{return 11;}	#.*.sdx.ne.jp$ 埼玉データエクスチェンジサービス（埼玉）
if($remo =~ /\.tcv\.jp$/)		{return 13;}	#.*.tcv.jp$ 東京ケーブルビジョン
if($remo =~ /\.h555\.net$/)		{return 28;}	#.*.h555.net$ h555.net（兵庫県）
if($remo =~ /\.lan-do\.ne\.jp$/)	{return 1;}	#.*.lan-do.ne.jp$ 旭川ケーブルテレビ ポテト（北海道旭川市）
if($remo =~ /\.bbbn\.jp$/)		{return 34;}	#.*.bbbn.jp$ BBBN（広島県）
if($remo =~ /\.ctb\.ne\.jp$/)		{return 44;}	#.*.ctb.ne.jp$ CTBメディア（大分）
if($remo =~ /\.intsurf\.ne\.jp$/)	{return 24;}	#.*.intsurf.ne.jp$ イントサーフ（三重県桑名市・東員町）
if($remo =~ /\.cvk\.ne\.jp$/)		{return 19;}	#.*.cvk.ne.jp$ 峡西ＣＡＴＶ（山梨県南アルプス市）
if($remo =~ /\.omn\.ne\.jp$/)		{return 6;}	#.*.omn.ne.jp$ ニコニコケーブルテレビジョン（山形）
if($remo =~ /\.kcv-net\.ne\.jp$/)	{return 11;}	#.*.kcv-net.ne.jp$ 川越ケーブルテレビ（埼玉県川越市）
if($remo =~ /\.accsnet\.ne\.jp$/)	{return 8;}	#.*.accsnet.ne.jp$ ACCSnet（茨城県つくば市）
if($remo =~ /\.tst\.ne\.jp$/)		{return 16;}	#.*.tst.ne.jp$ となみ衛星通信テレビ（富山県小矢部市・南砺市・砺波市）
if($remo =~ /\.ctt\.ne\.jp$/)		{return 16;}	#.*.ctt.ne.jp$ ケーブルテレビ富山（富山県富山市・舟橋村）
if($remo =~ /\.fctv\.ne\.jp$/)		{return 18;}	#.*.fctv.ne.jp$ 福井ケーブルテレビ（福井）
if($remo =~ /\.izu\.co\.jp$/)		{return 22;}	#.*.izu.co.jp$ 伊豆急ケーブルネットワーク（静岡県東部）
if($remo =~ /\.icnet\.ne\.jp$/)		{return 12;}	#.*.icnet.ne.jp$ いちかわケーブルネットワーク（千葉県市川市）
if($remo =~ /\.kyoto-inetbb\.jp$/)	{return 26;}	#.*.kyoto-inetbb.jp$ 京都アイネットBB（京都）
if($remo =~ /\.cc22\.ne\.jp$/)		{return 34;}	#.*.cc22.ne.jp$ ふれあいチャンネル（広島市）
if($remo =~ /\.catv296\.ne\.jp$/)	{return 12;}	#.*.catv296.ne.jp$ ケーブルネット296（千葉）
if($remo =~ /\.ueda\.ne\.jp$/)		{return 20;}	#.*.ueda.ne.jp$ 上田ケーブルビジョン（長野）
if($remo =~ /\.toshima\.ne\.jp$/)	{return 13;}	#.*.toshima.ne.jp$ 豊島ケーブルネットワーク（東京都豊島区）
if($remo =~ /\.ii-okinawa\.ne\.jp$/)	{return 47;}	#.*.ii-okinawa.ne.jp$ ii-okinawa（沖縄）
if($remo =~ /\.biwa\.ne\.jp$/)		{return 25;}	#.*.biwa.ne.jp$ BIWALOBE（滋賀）
if($remo =~ /\.tvkumagaya\.ne\.jp$/)	{return 11;}	#.*.tvkumagaya.ne.jp$ 熊谷ケーブルテレビ（埼玉県熊谷市）
if($remo =~ /\.mable\.ne\.jp$/)		{return 32;}	#.*.mable.ne.jp$ 山陰ケーブルビジョン（島根県松江市）
if($remo =~ /\.tamatele\.ne\.jp$/)	{return 33;}	#.*.tamatele.ne.jp$ 玉島テレビ（岡山県倉敷市）
if($remo =~ /\.ccnet-ai\.ne\.jp$/)	{return 23;}	#.*.ccnet-ai.ne.jp$ CCNet豊川局（愛知県豊川市）
if($remo =~ /\.infoaomori\.ne\.jp$/)	{return 2;}	#.*.infoaomori.ne.jp$ 7-dj.com（青森）
if($remo =~ /\.7-dj\.ne\.jp$/)		{return 2;}	#.*.infoaomori.ne.jp$ 7-dj.com（青森）

if($remo =~ /\.btvm\.ne\.jp$/)		{return 46;}	#.*.btvm.ne.jp$ BTVケーブルテレビジョン（鹿児島）
if($remo =~ /\.kbn\.ne\.jp$/)		{return 37;}	#.*.kbn.ne.jp$ 香川テレビ放送網（香川）
if($remo =~ /\.rcn\.ne\.jp$/)		{return 18;}	#.*.rcn.ne.jp$ menet（福井）
if($remo =~ /\.hearts\.ne\.jp$/)	{return 38;}	#.*.hearts.ne.jp$ HEART NET（愛媛）
if($remo =~ /\.yct\.ne\.jp$/)		{return 33;}	#.*.yct.ne.jp$ 矢掛放送（岡山県小田郡矢掛町）
if($remo =~ /\.c3-net\.ne\.jp$/)	{return 14;}	#.*.c3-net.ne.jp$ JCN港南（神奈川県横浜市）
if($remo =~ /\.ginga-net\.ne\.jp$/)	{return 3;}	#.*.ginga-net.ne.jp$ 北上ケーブルテレビ（岩手県北上市）
if($remo =~ /\.icn-net\.ne\.jp$/)	{return 3;}	#.*.icn-net.ne.jp$ 一関ケーブルネットワーク（岩手県一関市）
if($remo =~ /\.canet\.ne\.jp$/)		{return 16;}	#.*.canet.ne.jp$ 射水ケーブルテレビ（富山県射水市・高岡市）
if($remo =~ /\.kamakuranet\.ne\.jp$/)	{return 14;}	#.*.kamakuranet.ne.jp$ 鎌倉ケーブルテレビ（神奈川県鎌倉市）
if($remo =~ /\.s-cnet\.ne\.jp$/)	{return 22;}	#.*.s-cnet.ne.jp$ ドリームウェーブ静岡（静岡県静岡市）
if($remo =~ /\.c-marinet\.ne\.jp$/)	{return 4;}	#.*.c-marinet.ne.jp$ 塩釜ケーブルテレビ（宮城県塩釜市・多賀城市・利府町・七ヶ浜町）
if($remo =~ /\.himawarinet\.ne\.jp$/)	{return 42;}	#.*.himawarinet.ne.jp$ ひまわりてれび（長崎）
if($remo =~ /\.ccsnet\.ne\.jp$/)	{return 35;}	#.*.ccsnet.ne.jp$ シティーケーブル周南（山口県周南市）
if($remo =~ /\.sakura-catv\.ne\.jp$/)	{return 13;}	#.*.sakura-catv.ne.jp$ さくらケーブルテレビ（東京都墨田区）
if($remo =~ /\.hinocatv\.ne\.jp$/)	{return 13;}	#.*.hinocatv.ne.jp$ 日野ケーブルテレビ（東京都）
if($remo =~ /\.watv\.ne\.jp$/)		{return 9;}	#.*.watv.ne.jp$ わたらせテレビ（栃木県足利市）
if($remo =~ /\.mctv\.ne\.jp$/)		{return 24;}	#.*.mctv.ne.jp$ MCTV松阪ケーブルテレビ（三重県松阪市）
if($remo =~ /\.tmtv\.ne\.jp$/)		{return 14;}	#.*.tmtv.ne.jp$ ケーブルネットつづきの森（横浜市都筑区）
if($remo =~ /\.ttv\.ne\.jp$/)		{return 13;}	#.*.ttv.ne.jp$ 多摩テレビ（東京都八王子市・町田市・多摩市・稲城市）
if($remo =~ /\.sopia\.or\.jp$/)		{return 8;}	#.*.sopia.or.jp$ ソピアフォンス株式会社（茨城県鹿嶋市）
if($remo =~ /\.nice-tv\.jp$/)		{return 16;}	#.*.nice-tv.jp$ NICE TV（富山県魚津市）
if($remo =~ /\.iwamicatv\.jp$/)		{return 32;}	#.*.iwamicatv.jp$ 石見ケーブルビジョン（島根県浜田市・江津市）
if($remo =~ /\.cac-net\.ne\.jp$/)	{return 23;}	#.*.cac-net.ne.jp$ CATV愛知（愛知県半田市）

if($remo =~ /\.inforyoma\.or\.jp$/)	{return 39;}	#inforyoma.or.jp 高知
if($remo =~ /\.joetsu\.ne\.jp$/)	{return 15;}	#joetsu.ne.jp 新潟
if($remo =~ /\.cable-net\.ne\.jp$/)	{return 25;}	#cable-net.ne.jp 滋賀
if($remo =~ /\.icc\.ne\.jp$/)		{return 14;}	#icc.ne.jp 神奈川
if($remo =~ /\.bai\.ne\.jp$/)		{return 28;}	#bai.ne.jp 兵庫
if($remo =~ /\.people-i\.ne\.jp$/)	{return 41;}	#people-i.ne.jp 佐賀
if($remo =~ /\.fruits\.ne\.jp$/)	{return 19;}	#fruits.ne.jp 山梨
if($remo =~ /\.viplt\.ne\.jp$/)		{return 70;}	#viplt.ne.jp 北陸
if($remo =~ /\.taku\.ne\.jp$/)		{return 41;}	#taku.ne.jp 佐賀
if($remo =~ /\.htv-net\.ne\.jp$/)	{return 2;}	#htv-netne.jp 青森
if($remo =~ /\.gol\.ne\.jp$/)		{return 68;}	#'gol.ne.jp'
if($remo =~ /\.kinet-tv\.ne\.jp$/)	{return 26;}	#'kinet-tv.ne.jp'京都
if($remo =~ /\.cyberbb\.ne\.jp$/)	{return 68;}	#'cyberbb.ne.jp'
if($remo =~ /\.tribe\.ne\.jp$/)		{return 68;}	#'tribe.ne.jp'
if($remo =~ /\.janis\.or\.jp$/)		{return 20;}	#janis.or.jp（長野）
if($remo =~ /\.valley\.ne\.jp$/)	{return 20;}	#valley.ne.jp（長野）
if($remo =~ /\.tnc\.ne\.jp$/)		{return 22;}	#tnc.ne.jp　静岡
if($remo =~ /\.tokai\.or\.jp$/)		{return 22;}	#tokai.or.jp　静岡
if($remo =~ /\.chukai\.ne\.jp$/)	{return 31;}	#chukai.ne.jp　鳥取
if($remo =~ /\.nasicnet\.ne\.jp$/)	{return 27;}	#nasicnet.ne.jp　大阪
if($remo =~ /\.namikata\.ne\.jp$/)	{return 38;}	#namikata.ne.jp　愛媛
if($remo =~ /\.bunbun\.ne\.jp$/)	{return 41;}	#bunbun.ne.jp 佐賀
if($remo =~ /\.harenet\.ne\.jp$/)	{return 33;}	#harenet.ne.jp 岡山
if($remo =~ /\.yomogi\.or\.jp$/)	{return 9;}	#yomogi.or.jp 栃木
if($remo =~ /\.ttn\.ne\.jp$/)		{return 18;}	#ttn.ne.jp 福井
if($remo =~ /\.rosenet\.ne\.jp$/)	{return 13;}	#rosenet.ne.jp 東京
if($remo =~ /\.ctktv\.ne\.jp$/)		{return 14;}	#ctktv.ne.jp 神奈川
if($remo =~ /\.gctv\.ne\.jp$/)		{return 23;}	#gctv.ne.jp 名古屋
if($remo =~ /\.kamon\.ne\.jp$/)		{return 34;}	#kamon.ne.jp 広島
if($remo =~ /\.canvas\.ne\.jp$/)	{return 68;}	#canvas.ne.jp 長屋
if($remo =~ /\.i-chubu\.ne\.jp$/)	{return 52;}	#i-chubu.ne.jp 中部
if($remo =~ /\.oct-net\.ne\.jp$/)	{return 44;}	#oct-net.ne.jp 大分
if($remo =~ /\.megax\.ne\.jp$/)		{return 56;}	#megax.ne.jp 九州
if($remo =~ /\.icntv\.ne\.jp$/)		{return 12;}	#icntv.ne.jp 千葉
if($remo =~ /\.cyberhome\.ne\.jp$/)	{return 68;}	#cyberhome.ne.jp 長屋
if($remo =~ /\.pcsitebrowser\.ne\.jp$/)	{return 60;}	#pcsitebrowser.ne.jp 空
if($remo =~ /\.nava21\.ne\.jp$/)	{return 24;}	#nava21.ne.jp 三重
if($remo =~ /\.catv-mic\.ne\.jp$/)	{return 3;}	#catv-mic.ne.jp 岩手
if($remo =~ /\.edit\.ne\.jp$/)		{return 13;}	#edit.ne.jp 東京
if($remo =~ /\.mto\.ne\.jp$/)		{return 33;}	#mto.ne.jp 岡山
if($remo =~ /\.seaple\.ne\.jp$/)	{return 12;}	#seaple.ne.jp 千葉
if($remo =~ /\.firstserver\.ne\.jp$/)	{return 27;}	#firstserver.ne.jp 大阪

if($remo =~ /\.anc-tv\.ne\.jp$/)	{return 20;}	#.anc-tv.ne.jp 長野県　20
if($remo =~ /\.attmil\.ne\.jp$/)	{return 68;}	#.attmil.ne.jp 
if($remo =~ /\.attnet\.ne\.jp$/)	{return 68;}	#.attnet.ne.jp 
if($remo =~ /\.bias\.ne\.jp$/)		{return 68;}	#.bias.ne.jp ホスティングサービス？
if($remo =~ /\.bb-west\.ne\.jp$/)	{return 57;}	#.bb-west.ne.jp 関西 中部 九州
if($remo =~ /\.cableone\.ne\.jp$/)	{return 68;}	#.cableone.ne.jp 佐賀県 41
if($remo =~ /\.dsnw\.ne\.jp$/)		{return 41;}	#.dsnw.ne.jp 全国区　都道府県別可能か？
if($remo =~ /\.eagle-net\.ne\.jp$/)	{return 17;}	#.eagle-net.ne.jp 石川県　17
if($remo =~ /\.eastcom\.ne\.jp$/)	{return 12;}	#.eastcom.ne.jp 千葉県　12
if($remo =~ /\.icn-tv\.ne\.jp$/)	{return 35;}	#.icn-tv.ne.jp 山口県 35
if($remo =~ /\.em-net\.ne\.jp$/)	{return 68;}	#.em-net.ne.jp 全国区
if($remo =~ /\.hachigamenet\.ne\.jp$/)	{return 41;}	#.hachigamenet.ne.jp 佐賀県
if($remo =~ /\.hagakure\.ne\.jp$/)	{return 41;}	#.hagakure.ne.jp 佐賀県
if($remo =~ /\.hal\.ne\.jp$/)		{return 68;}	#.hal.ne.jp 全国区
if($remo =~ /\.i-younet\.ne\.jp$/)	{return 22;}	#.i-younet.ne.jp 静岡県
if($remo =~ /\.ip-link\.ne\.jp$/)	{return 51;}	#.ip-link.ne.jp 関東地方
if($remo =~ /\.iprevolution\.ne\.jp$/)	{return 68;}	#.iprevolution.ne.jp 全国区
if($remo =~ /\.ium\.ne\.jp$/)		{return 13;}	#.ium.ne.jp 串っぽい(東京)
if($remo =~ /\.ktv\.ne\.jp$/)		{return 10;}	#.ktv.ne.jp 群馬県
if($remo =~ /\.matsumoto\.ne\.jp$/)	{return 20;}	#.matsumoto.ne.jp 長野県
if($remo =~ /\.nsk\.ne\.jp$/)		{return 71;}	#.nsk.ne.jp 富山、福井、石川
if($remo =~ /\.pikara\.ne\.jp$/)	{return 14;}	#.pikara.ne.jp 四国
if($remo =~ /\.raidway\.ne\.jp$/)	{return 68;}	#.raidway.ne.jp 神奈川
if($remo =~ /\.rnac\.ne\.jp$/)		{return 5;}	#.rnac.ne.jp 秋田・岩手
if($remo =~ /\.rurbannet\.ne\.jp$/)	{return 12;}	#.rurbannet.ne.jp 千葉
if($remo =~ /\.sensyu\.ne\.jp$/)	{return 27;}	#.sensyu.ne.jp 大阪
if($remo =~ /\.speednet\.ne\.jp$/)	{return 68;}	#.speednet.ne.jp 東京
if($remo =~ /\.tctv\.ne\.jp$/)		{return 13;}	#.tctv.ne.jp 東京
if($remo =~ /\.ttmy\.ne\.jp$/)		{return 14;}	#.ttmy.ne.jp 神奈川
if($remo =~ /\.tvm\.ne\.jp$/)		{return 20;}	#.tvm.ne.jp 長野
if($remo =~ /\.urban\.ne\.jp$/)		{return 68;}	#.urban.ne.jp 
if($remo =~ /\.goennet\.ne\.jp$/)	{return 32;}	#.goennet.ne.jp 島根
if($remo =~ /\.ictweb\.ne\.jp$/)	{return 47;}	#.ictweb.ne.jp 沖縄

if($remo =~ /\.tns\.ne\.jp$/)		{return 68;}	#.tns.ne.jp トヨタ自動車関連　全国区
if($remo =~ /\.warabi\.ne\.jp$/)	{return 11;}	#.warabi.ne.jp 埼玉
if($remo =~ /\.stnet\.ne\.jp$/)		{return 68;}	#.stnet.ne.jp 全国　(フレッツ)
if($remo =~ /\.bmobile\.ne\.jp$/)	{return 60;}	#.bmobile.ne.jp 全国　(PHS)
if($remo =~ /\.meon\.ne\.jp$/)		{return 55;}	#.meon.ne.jp 山口 岡山県・鳥取県
if($remo =~ /\.hinanet\.ne\.jp$/)	{return 6;}	#.hinanet.ne.jp 山形
if($remo =~ /\.nima-cho\.ne\.jp$/)	{return 32;}	#.nima-cho.ne.jp 島根
if($remo =~ /\.nus\.ne\.jp$/)		{return 19;}	#.nus.ne.jp 山梨
if($remo =~ /\.tv-naruto\.ne\.jp$/)	{return 36;}	#.tv-naruto.ne.jp 徳島
if($remo =~ /\.access-internet\.ne\.jp$/)	{return 60;}	#.access-internet.ne.jp ソフトバンクモバイルのサービス
if($remo =~ /\.cat-v\.ne\.jp$/)		{return 4;}	#.cat-v.ne.jp 宮城
if($remo =~ /\.mct\.ne\.jp$/)		{return 46;}	#.mct.ne.jp 鹿児島
if($remo =~ /\.iam\.ne\.jp$/)		{return 68;}	#.iam.ne.jp 
if($remo =~ /\.arena\.ne\.jp$/)		{return 68;}	#.arena.ne.jp 

if($remo =~ /\.comcast\.net$/)		{return 80;}	#.comcast.net 米国
if($remo =~ /\.cilas\.net$/)		{return 68;}	#.cilas.net 全国マンション
if($remo =~ /\.fiberbit\.net$/)		{return 68;}	#.fiberbit.net 全国
if($remo =~ /\.hawaiiantel\.net$/)	{return 80;}	#.hawaiiantel.net アメリカ ハワイ
if($remo =~ /\.hinet\.net$/)		{return 68;}	#.hinet.net 台湾
if($remo =~ /\.imouto\.net$/)		{return 48;}	#.imouto.net 全国
if($remo =~ /\.isao\.net$/)		{return 68;}	#.isao.net 地域別可能？
if($remo =~ /\.mediatti\.net$/)		{return 68;}	#.mediatti.net catv　全国
if($remo =~ /\.solteria\.net$/)		{return 68;}	#.solteria.net IP-VPNサービス　ソフトバンクテレコム系
if($remo =~ /\.zero-isp\.net$/i)	{return 68;}	#.zero-isp.net 全国・地域特定不能

if($remo =~ /\.ibara\.ne\.jp$/)		{return 33;}	#.ibara.ne.jp 岡山
if($remo =~ /\.rak-rak\.ne\.jp$/)	{return 52;}	#.rak-rak.ne.jp 中部地方
if($remo =~ /\.cypress\.ne\.jp$/)	{return 30;}	#.cypress.ne.jp 和歌山
if($remo =~ /\.seiryu\.ne\.jp$/)	{return 21;}	#.seiryu.ne.jp 岐阜県
if($remo =~ /\.wings\.ne\.jp$/)		{return 68;}	#.wings.ne.jp 全国
if($remo =~ /\.jyaken\.ne\.jp$/)	{return 34;}	#.jyaken.ne.jp 広島
if($remo =~ /\.bb4u\.ne\.jp$/)		{return 68;}	#.bb4u.ne.jp 全国　マンション
if($remo =~ /\.n-cube\.ne\.jp$/)	{return 68;}	#.n-cube.ne.jp 全国
if($remo =~ /\.ont\.ne\.jp$/)		{return 5;}	#.ont.ne.jp 秋田県
if($remo =~ /\.awaikeda\.ne\.jp$/)	{return 36;}	#.awaikeda.net 徳島
if($remo =~ /\.ccjnet\.ne\.jp$/)	{return 34;}	#.ccjnet.ne.jp 広島
if($remo =~ /\.hotspot\.ne\.jp$/)	{return 60;}	#.hotspot.ne.jp ホットスポット
if($remo =~ /\.brew\.ne\.jp$/)		{return 60;}	#.brew.ne.jp ezwebのフルブラウザ

if($remo =~ /\.openmobile\.ne\.jp$/)	{return 68;}	#.openmobile.ne.jp(全国)ソフトバンクモバイル？
if($remo =~ /\.jet\.ne\.jp$/)		{return 58;}	#.jet.ne.jp(東日本)
if($remo =~ /\.icv\.ne\.jp$/)		{return 32;}	#.icv.ne.jp(島根)
if($remo =~ /\.kagacable\.ne\.jp$/)	{return 17;}	#.kagacable.ne.jp(石川)
if($remo =~ /\.icv-net\.ne\.jp$/)	{return 42;}	#.icv-net.ne.jp(長崎)
if($remo =~ /\.izumo\.ne\.jp$/)		{return 32;}	#.izumo.ne.jp(島根)
if($remo =~ /\.ch-you\.ne\.jp$/)	{return 20;}	#.ch-you.ne.jp(長野)
if($remo =~ /\.hotcn\.ne\.jp$/)		{return 1;}	#.hotcn.ne.jp(北海道)
if($remo =~ /\.nct\.ne\.jp$/)		{return 7;}	#.nct.ne.jp(福島)
if($remo =~ /\.otc\.ne\.jp$/)		{return 47;}	#.otc.ne.jp(沖縄)

if($remo =~ /\.shawcable\.net$/)	{return 81;}	#.shawcable.net(カナダ)
if($remo =~ /\.verizon\.net$/)		{return 80;}	#.verizon.net(アメリカ)
if($remo =~ /\.i-products\.net$/)	{return 68;}	#.i-products.net(全国)ibisBrowser?
if($remo =~ /\.awaikeda\.net$/)		{return 36;}	#.awaikeda.net(徳島)
if($remo =~ /\.bitcat\.net$/)		{return 51;}	#.bitcat.net(bitcatは三井不動産マンション向けサービス→ライブドアに吸収合併で東京・神奈川・埼玉かなと思います)
if($remo =~ /\.Level3\.net$/)		{return 80;}	#.Level3.net(アメリカ)
if($remo =~ /\.edu$/)			{return 80;}	#.edu(アメリカ)

if($remo =~ /\.awacco\.ne\.jp$/)	{return 36;}	#.awacco.ne.jp(徳島)
if($remo =~ /\.ccnetmie\.ne\.jp$/)	{return 24;}	#.ccnetmie.ne.jp(三重)
if($remo =~ /\.ciaotv\.ne\.jp$/)	{return 24;}	#.ciaotv.ne.jp(三重)
if($remo =~ /\.firnet\.ne\.jp$/)	{return 43;}	#.firnet.ne.jp(熊本)
if($remo =~ /\.fnj\.ne\.jp$/)		{return 68;}	#.fnj.ne.jp(全国)
if($remo =~ /\.haginet\.ne\.jp$/)	{return 35;}	#.haginet.ne.jp(山口)
if($remo =~ /\.i-berry\.ne\.jp$/)	{return 9;}	#.i-berry.ne.jp(栃木)
if($remo =~ /\.i-yume\.ne\.jp$/)	{return 32;}	#.i-yume.ne.jp(島根)
if($remo =~ /\.icknet\.ne\.jp$/)	{return 38;}	#.icknet.ne.jp(愛媛)
if($remo =~ /\.infoeddy\.ne\.jp$/)	{return 57;}	#.infoeddy.ne.jp(西日本)

if($remo =~ /\.jctv\.ne\.jp$/)		{return 36;}	#.jctv.ne.jp　徳島
if($remo =~ /\.jway\.ne\.jp$/)		{return 8;}	#.jway.ne.jp　茨城
if($remo =~ /\.kcb-net\.ne\.jp$/)	{return 39;}	#.kcb-net.ne.jp　高知
if($remo =~ /\.kctvnet\.ne\.jp$/)	{return 1;}	#.kctvnet.ne.jp　北海道
if($remo =~ /\.kkm\.ne\.jp$/)		{return 32;}	#.kkm.ne.jp　島根
if($remo =~ /\.nkoutokuji\.ne\.jp$/)	{return 46;}	#.koutokuji.ne.jp　鹿児島
if($remo =~ /\.kyt-net\.ne\.jp$/)	{return 26;}	#.kyt-net.ne.jp　京都
if($remo =~ /\.kvision\.ne\.jp$/)	{return 35;}	#.kvision.ne.jp　山口
if($remo =~ /\.maotv\.ne\.jp$/)		{return 22;}	#.maotv.ne.jp　静岡
if($remo =~ /\.mcbnet\.ne\.jp$/)	{return 37;}	#.mcbnet.ne.jp　香川

if($remo =~ /\.nanmoku\.ne\.jp$/)	{return 10;} #.nanmoku.ne.jp(群馬)
if($remo =~ /\.nct9\.ne\.jp$/)		{return 15;} #.nct9.ne.jp(新潟)
if($remo =~ /\.netfour\.ne\.jp$/)	{return 41;} #.netfour.ne.jp(佐賀)
if($remo =~ /\.nkansai\.ne\.jp$/)	{return 57;} #.nkansai.ne.jp(西日本)
if($remo =~ /\.octp-net\.ne\.jp$/)	{return 42;} #.octp-net.ne.jp(長崎)
if($remo =~ /\.okuizumo\.ne\.jp$/)	{return 32;} #.okuizumo.ne.jp(島根)
if($remo =~ /\.pcm\.ne\.jp$/)		{return 25;} #.pcm.ne.jp(滋賀)
if($remo =~ /\.qtnet\.ne\.jp$/)		{return 56;} #.qtnet.ne.jp(九州地方)
if($remo =~ /\.ryucom\.ne\.jp$/)	{return 47;} #.ryucom.ne.jp(沖縄)
if($remo =~ /\.sakura\.ne\.jp$/)	{return 68;} #.sakura.ne.jp(レンタルサーバ)

if($remo =~ /\.sanuki\.ne\.jp$/)	{return 37;}	#.sanuki.ne.jp(香川)
if($remo =~ /\.scatv\.ne\.jp$/)		{return 39;}	#.scatv.ne.jp(高知)
if($remo =~ /\.shiojiri\.ne\.jp$/)	{return 20;}	#.shiojiri.ne.jp(長野)
if($remo =~ /\.snowman\.ne\.jp$/)	{return 1;}	#.snowman.ne.jp(北海道)
if($remo =~ /\.sub\.ne\.jp$/)		{return 68;}	#.sub.ne.jp(全国)dti法人向け
if($remo =~ /\.tvt\.ne\.jp$/)		{return 33;}	#.tvt.ne.jp(岡山)
if($remo =~ /\.webone\.ne\.jp$/)	{return 1;}	#.webone.ne.jp(北海道)
if($remo =~ /\.yappo\.ne\.jp$/)		{return 68;}	#.yappo.ne.jp(全国)ケータイゲートウェイサービスbydocomo
if($remo =~ /\.leo-net\.jp$/)		{return 67;}	#.leo-net.jp
if($remo =~ /\.bb-niigata\.jp$/)	{return 15;}	#.bb-niigata.jp(新潟)

if($remo =~ /\.lbdsl\.net$/)		{return 80;} #.lbdsl.net　アメリカ
if($remo =~ /\.cox\.net$/)		{return 80;} #.cox.net　アメリカ
if($remo =~ /\.vrtc\.net$/)		{return 21;} #.vrtc.net　岐阜県恵那市岩村町
if($remo =~ /\.pacbell\.net$/)		{return 80;} #.pacbell.net　アメリカ
if($remo =~ /\.iowatelecom\.net$/)	{return 80;} #.iowatelecom.net　アメリカ
if($remo =~ /\.ms246\.net$/)		{return 13;} #.ms246.net　東京・神奈川
if($remo =~ /\.gujocity\.net$/)		{return 21;} #.gujocity.net　岐阜県郡上八幡
if($remo =~ /\.gru\.net$/)		{return 80;} #.gru.net　アメリカ
if($remo =~ /\.ovh\.net$/)		{return 80;} #.ovh.net　フランス
if($remo =~ /\.axelmark\.net$/)		{return 68;} #.axelmark.net　sv0134.dc01.axel

if($remo =~ /\.bitcat\.net$/)		{return 68;} #.bitcat.net(全国マンション？)
if($remo =~ /\.dsl\.net$/)		{return 80;} #.dsl.net(アメリカ)
if($remo =~ /\.e-awa\.net$/)		{return 36;} #.e-awa.net(徳島)
if($remo =~ /\.e-nt\.net$/)		{return 80;} #.e-nt.net(アメリカ)
if($remo =~ /\.proxad\.net$/)		{return 80;} #.proxad.net(フランス)
if($remo =~ /\.arcor-ip\.net$/)		{return 80;} #.arcor-ip.net(ドイツ)
if($remo =~ /\.fastres\.net$/)		{return 80;} #.fastres.net(イタリア)
if($remo =~ /\.t-dialin\.net$/)		{return 80;} #.t-dialin.net(ドイツ)
if($remo =~ /\.nameservices\.net$/)	{return 80;} #.nameservices.net(アメリカ)
if($remo =~ /\.sbcglobal\.net$/)	{return 80;} #.sbcglobal.net(アメリカ)
if($remo =~ /\.fctv-net\.net$/)		{return 42;} #.fctv-net.jp(長崎)
if($remo =~ /\.kwins\.net$/)		{return 60;} #.kwins.net(モバイル)
if($remo =~ /\.ycix\.net$/)		{return 19;} #.ycix.net(山梨)

if($remo =~ /\.nasicnet\.com$/)		{return 68;} #.nasicnet.com(全国マンション)
if($remo =~ /\.xiando\.com$/)		{return 68;} #.xiando.com(海外セイシェル)
if($remo =~ /\.george24\.com$/)		{return 68;} #.george24.com(全国マンション)
if($remo =~ /\.kaga-tv\.com$/)		{return 17;} #.kaga-tv.com(石川)

if($remo =~ /\.takamori\.ne\.jp$/)	{return 20;} #.takamori.ne.jp(長野)
if($remo =~ /\.hctv\.ne\.jp$/)		{return 11;} #.hctv.ne.jp(埼玉)
if($remo =~ /\.dcn\.ne\.jp$/)		{return 51;} #.dcn.ne.jp(関東地方)
if($remo =~ /\.icn\.ne\.jp$/)		{return 15;} #.icn.ne.jp(新潟)
if($remo =~ /\.au-net\.ne\.jp$/)	{return 68;} #.au-net.ne.jp(全国)
if($remo =~ /\.knc\.ne\.jp$/)		{return 1;}  #.knc.ne.jp(北海道)
if($remo =~ /\.coralnet\.or\.jp$/)	{return 70;} #.coralnet.or.jp(北陸)
if($remo =~ /\.mitene\.or\.jp$/)	{return 68;} #.mitene.or.jp(全国)
if($remo =~ /\.din\.or\.jp$/)		{return 68;} #.din.or.jp(全国)

if($remo =~ /\.zoot\.jp$/)		{return 68;} #.zoot.jp　全国
if($remo =~ /\.gmo-access\.jp$/)	{return 68;} #.gmo-access.jp　全国
if($remo =~ /\.dsn\.jp$/)		{return 68;} #.dsn.jp 全国
if($remo =~ /\.withe\.ne\.jp$/)		{return 68;} #.withe.ne.jp マンション
if($remo =~ /\.supercsi\.jp$/)		{return 72;} #.supercsi.jp　中国地方？(四国も)
if($remo =~ /\.banban\.jp$/)		{return 28;} #.banban.jp(兵庫)
if($remo =~ /\.viplt\.ne\.jp$/)		{return 71;} #.viplt.ne.jp 北陸中心だけどフレッツの範囲は西日本

if($remo =~ /\.iwami\.or\.jp$/)		{return 28;} #.iwami.or.jp
if($remo =~ /\.optonline\.net$/)	{return 28;} #.optonline.net
if($remo =~ /\.zakkaz\.ne\.jp$/)	{return 28;} #.zakkaz.ne.jp
if($remo =~ /\.katsunuma\.ne\.jp$/)	{return 28;} #.katsunuma.ne.jp
if($remo =~ /\.tgn\.or\.jp$/)		{return 28;} #.tgn.or.jp
#.voice-factory.net
#.info.net
#.speakeasy.net
#.kagoya.net
#.qwest.net

#.ksp.or.jp
#.sala.or.jp
#.rim.or.jp
#.fureai.or.jp
#.fitweb.or.jp

#.ose.ne.jp
#.tocn.ne.jp
#.myt.ne.jp
#.hibikino.ne.jp
#.speedway.ne.jp
#.kamitv.ne.jp
#.chun2.ne.jp
#.inetpia.ne.jp
#.satsuma.ne.jp
#.aso.ne.jp
#.kiso.ne.jp
#.gotemba.ne.jp

#CCCCC
#'50東北地方','51関東地方','52中部地方','53関西地方','54四国地方','55中国地方','56九州地方','57西日本','58東日本','',

	my $ken = ''; #←このブロックで定義されてない
	if($remo =~ /\.ezweb\.ne\.jp$/)	{return 60;}
	if($remo =~ /\.enjoy\.ne\.jp$/)	{return 0;}
#	if($remo =~ /\.net$/)		{if(open(LX,">> HOST29.000")){print LX "(ne.jp)$remo($ken)\n";close(LX);}}
#	if($remo =~ /\.ne\.jp$/)	{if(open(LX,">> HOST29.000")){print LX "(ne.jp)$remo($ken)\n";close(LX);}}
#	if($remo =~ /\.go\.jp$/)	{if(open(LX,">> HOST29.000")){print LX "(ne.jp)$remo($ken)\n";close(LX);}}
#	if($remo =~ /\.or\.jp$/)	{if(open(LX,">> HOST29.000")){print LX "(ne.jp)$remo($ken)\n";close(LX);}}
#{if(open(LX,">> HOST29.000")){print LX "(?????)$remo($ken)\n";close(LX);}}
	return 67	;
}
print "Content-type: text/html; charset=Shift_JIS\n\n";
$ua = $ENV{'HTTP_USER_AGENT'};
        $ip = $ENV{'REMOTE_ADDR'};
        $host = gethostbyaddr(pack("C4", split(/\./, $ENV{'REMOTE_ADDR'})), 2);
if ($host eq ''){$host = $ip;}
print "<HTML><BODY>あなたのホスト:$host<br>";
$kenken = &area47($host);
$ccc = $input{'ken'};
$trueken = $kenmei[$ccc];
if ($input{'ken'}){
	open (FH,">>ken2.txt");
        print FH "$host,$kenken,$trueken\n";
	close (FH);
	print "OK!<br>$host,$kenken,$trueken<br>";
}
else{
	open (FH,">>kenk.txt");
	print FH "$host,$kenken\n";
	print "<form method=\"GET\" action=\"ken3.cgi\">正しい県名：<select name=ken>";
	$cnt = 0;
	foreach $kea (@kenmei){
		print "<option value=\"$cnt\">$kea</option>\n";
		$cnt = $cnt + 1;
	}
	print "</select><input type=\"submit\"></form>";
}

close(FH);
exit;